1. 程式人生 > >部署應用程序

部署應用程序

多個進程 vbs 安裝 ima 做到 恢復 ssm ESS tex

Supervisord

進程管理工具(Supervisor) :

Supervisor是用Python開發的一個client/server服務,是Linux/Unix系統下的一個進程管理工具,不支持Windows系統。它可以很方便的監聽、啟動、停止、重啟一個或多個進程。用Supervisor管理的進程,當一個進程意外被殺死,supervisort監聽到進程死後,會自動將它重新拉起,很方便的做到進程自動恢復的功能,不再需要自己寫shell腳本來控制。

Windows計劃任務

上面的工具不支持Windows,大概因為Windows不需要?
計劃任務可以自動重啟掛掉的進程。
taskschd.dll 可以用 vbs/js 腳本或者 C#/C++等語言調用,自動生成任務。當然也可以圖形化界面來手動設置。

技術分享圖片

將任務設置成開機啟動,然後設置任務失敗重新啟動,應該就可以讓程序在運行失敗後重新啟動了。
用這個應該是最方便的了。

NSSM

如果讓程序作為 “windows 的服務”,監控這些基本功能 windows 是自帶的。
所以只需要實現Windows服務註冊。這可以寫在代碼裏,找一下現成的庫。
也可以使用現成工具來實現:

NSSM(the Non-Sucking Service Manager)是Windows環境下一款免安裝的服務管理軟件,它可以將應用封裝成服務,使之像windows服務可以設置自動啟動等。並且可以監控程序運行狀態,程序異常中斷後自動啟動,實現守護進程的功能。不僅支持圖形界面操作,也完全支持命令行設置

部署應用程序