在Linux上,可以輕鬆的使用forever或者pm2來部署nodejs應用。但是在windows下就麻煩了,pm2明確的說支持Linux & MacOS,forever在windows下貌似問題多多:
另外還有一個選擇就是iisnode,這個有空研究一下,今天先說下比較簡單的nssm。nssm會監控你安裝的node服務,如果node掛了,nssm會自動重啓它。
安裝使用
目前最新版的是2.23(下載地址),下載之後解壓,根據你的系統選擇32位和64位的版本,直接在nssm.exe
所在目錄運行命令行,輸入nssw install
+你的服務名,例如:
- nssm install test
之後會顯示出GUI界面:
在Path
中選擇你安裝的node.exe,Startup directory
選擇你的node應用的目錄,Argument
輸入你的啓動文件,例如在我桌面上運行index.js
(在Startup directory目錄執行node index.js
):
點擊Install Service:
之後運行:
- nssm start test
服務已經啓動,我剛纔的index.js
文件,啓動一個http服務器,監聽3000端口,現在就可以打開127.0.0.1:3000
訪問了:
其他的設置可以參考官方文檔。它的命令行操作也很簡單:
- nssm start <servicename>
- nssm stop <servicename>
- nssm restart <servicename>
具體的操作官方文檔有詳細介紹,不再贅述。
目前公司的一個內網小項目使用了nodejs,找系統組申請服務器和部署比較麻煩(以前沒有node項目),就自己動手在一臺windows服務器上使用了nssm簡單部署了一下,具體表現考察中。