【VUE项目实战】68、使用pm2管理项目
接上篇《67、上線-開啟gzip和配置HTTPS服務》
 上一篇我們學習了如何開啟gzip配置來減少文件訪問體積,并配置HTTPS服務。本篇我們講解一下如何使用pm2管理項目。
 本篇是該系列的最后一篇,感謝各位小伙伴堅持到最后,祝各位技術越來越牛逼(#^.^#)。
一、前言
我們打開之前打包部署的前端項目,找到啟動文件app.js,其中我們創建了一個運行在8080端口的服務:
//導入express const express = require('express') // 導入compression壓縮插件包 const compression = require('compression'); //創建web服務器 const app = express()// 啟動compression壓縮插件中間件 app.use(compression()) //在這里調用express.static()方法, 快速對外提供靜態資源 //如果要對外提供多個靜態資源目錄,重復寫更換文件目錄即可 app.use(express.static('./dist'))//啟動web服務器 app.listen(8088,(req,res)=>{console.log('express server running at 127.0.0.1:8088')})我們運行該項目的時候,是需要通過命令窗口進入項目app.js所在目錄,然后使用“node .\app.js”去啟動它,才能在瀏覽器中訪問我們的系統:
 如果此時我們關閉這個命令窗口時,服務就停掉了,我們也無法訪問系統了。此時就存在一個問題,如果我在服務器中開啟很多個這樣的項目,就會出現很多個這種命令窗口,很不好管理而且容易誤操作關閉。
那么我們現在急需要一種手段,在我們啟動了web網站之后,關閉命令窗口,也能讓系統正常保持運行狀態。此時我們就需要借助pm2的管理工具來完成。
二、什么是pm2?
1、pm2簡介
pm2是可以用于生產環境的Nodejs的進程管理工具,并可以查看node進程的狀態,同時支持性能監控,進程守護,負載均衡等功能,并且使用起來非常簡單。同類工具還有Supervisor、Forever等。
 總而言之,pm2最好的用處就是可以保證服務不會中斷一直在線,并且可以監控我們的生產環境下的node程序運行狀態。
2、pm2主要特性
●內建負載均衡(使用node cluster集群模塊,可以使用服務器上的所有cpu)
●后臺運行(node app.js 這種命令是直接在前臺運行的,不穩定,很容易斷)
●0秒停機重載(上線升級的時候不需要停機)
●停止不穩定的進程(避免無限循環)
●控制臺檢測
三、如何安裝和使用pm2
首先我們需要在服務器安裝pm2,使用"npm i pm2 -g"指令全局安裝:
 當程序安裝完畢之后,使用“pm2 start .\app.js --name web_vueshop”啟動項目:
 該指令的格式是“pm2 start <script_file|config_file> [options]”,含義是啟動指定應用的意思。其中“<script_file|config_file>”是腳本或者配置文件的名稱,“[options]”是設置的參數,這里的“--name web_vueshop”就是為腳本服務自定義一個服務名稱“web_vueshop”。
 我們運行該指令后,可以看到最后打印了一個表格:
 該表格顯示我們當前服務器上運行了一個項目,名稱為“web_vueshop”,模式是“fork”,狀態是在線,還顯示cpu占用率以及內存的占用率。
 此時我們把命令窗口關閉,發現依然可以訪問我們的項目:
 這就是pm2將項目作為后臺服務托管的好處。
然后運行“pm2 ls”指令(“pm2 list”命令的簡寫),可以查看目前pm2托管運行的所有進程情況:
 可以看到我們名為“web_vueshop”的服務正在運行著。
我們還可以通過“pm2 stop 服務名”來停止項目后臺服務的運行:
 可以看到服務已經停止了:
我們還可以通過“pm2 restart 服務名”來進行項目的重啟(這里最后跟上我們前面自定義的服務名即可):
 可以看到服務又可以訪問了:
我們還可以通過“pm2 delete 服務名”來刪除項目后臺服務:
 刪除后通過“pm2 ls”查看服務列表,可以看到服務已經不存在了,此時訪問系統也是不可用狀態。
至此,我們的pm2的使用也講解完畢,全系列已結束,完結撒花??ヽ(°▽°)ノ?!
再次感謝各位的支持!請關注后續我的新系列博文~
參考:黑馬程序員(www.itheima.com)Vue項目實戰教學視頻
轉載請注明出處:https://blog.csdn.net/acmman/article/details/127335393
總結
以上是生活随笔為你收集整理的【VUE项目实战】68、使用pm2管理项目的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: FEC【筷云早报】 2020年7月29日
- 下一篇: 产品经理需要掌握的十大知识模块
