用 express 成功搭建起了項目骨架,接下來要進行開發了。若是你已經作過了 demo,那麼你可能會遇到如下問題:node
npm start
啓動服務器以後,只能掛在那裏,不能退出。若是你想執行其餘的命令,須要另外開一個終端窗口;web
若是你鏈接的是遠程服務器,好比阿里雲的 Linux 服務器,當你關閉終端的時候,服務器一樣會斷開;express
你在修改代碼文件以後,刷新瀏覽器,發現修改的內容並無生效,你必需手動斷開服務器,再啓動,修改纔會生效。npm
解決這些麻煩,咱們須要服務器至少有兩個能力:後臺運行
和自動重啓
;segmentfault
後臺運行,最簡單的方法是用 Linux 自帶命令nohup
,實現進程後臺執行:瀏覽器
nohup bin/www &
執行成功以後,node服務就後臺運行了;同時會在當前目錄下生成 nohup.out
文件,起到日誌的做用服務器
自動重啓,以前一直用 nodemon
這個模塊,npm 全局安裝,執行 nodemon app.js
以後,就會監測文件改變自動重啓服務器app
若是說要同時實現這兩個功能,你可能會想到forever
,不錯,可是這裏咱們要說pm2
,你能夠把 pm2 當作 forever 的升級版,具體差異自行 Google。 負載均衡
pm2 除了後臺運行和自動重啓(0秒重啓)這些基本功能外,還有進程管理,系統監控,日誌處理,負載均衡,還有計劃之中的內存泄露監測,web界面,郵件通知等(做爲小白的我目前用它基本功能就足夠啦哈哈),附上用法:ui
npm install pm2 -g #全局安裝pm2 pm2 start bin/www #啓動服務器 pm2 list #查看運行狀態 pm2 logs #查看日誌 pm2 restart www #重啓應用 pm2 stop www #中止應用
www
是用 pm2 啓動進程的名稱,執行pm2 list
查看,以下圖:
立刻動手試試吧!
本文由
楊成功
原創,更多原創文章請點這裏