egg-cluster

  1. egg 内置了一个插件 egg-cluster ,它的作用是在 egg 启动时,启动多个子进程;

  2. egg 实际上是运行在多个进程上的应用,这些进程的职责分别为:

    • 主进程Master 进程:稳定性极高的进程,主要负责管理其他进程;因此对于 egg 应用,无须使用 pm2 等工具;
    • worker 进程:由主进程开启,通常情况下数量和 cpu 的核数保持一致,worker 进程是真正用于处理请求的进程,某次请求具体交给哪个 worker 进程来处理由主进程调度;
    • Agent 进程:由主进程在启动后开启,只有一个,相当于其他进程的秘书,通常用于做各种脏活累活,比如维持一个长连接;agent 进程通常对开发者是隐形的,平时并不会接触它;

egg-scripts

egg-scripts 能够提供一些命令,来启动和停止 线上环境

安装

npm i egg-scripts

配置脚本

{
  "scripts": {
    "start": "egg-scripts start --daemon",
    "stop": "egg-scripts stop"
  }
}

运行

## 启动
npm start 

## 停止
npm run stop 

启动命令中支持以下参数

参数 描述
--title=name

设置应用全名,默认为 egg-server-${APP_NAME}

在停止时,建议指定停止的 egg 应用名称,否则,如果服务器运行了多个 egg 应用,将会停止所有的 egg 应用
egg-scripts stop --title=myegg-server

--port=7001 端口号,默认会读取环境变量 process.env.PORT ,如未传递将使用框架内置端口 7001
--daemon 是否允许以守护进程的模式运行(后台运行)
--env=prod 框架运行环境,默认会读取环境变量 process.env.EGG_SERVER_ENV , 如未传递将使用框架内置环境 prod
--workers=2 框架 worker 线程数,默认会创建和 CPU 核数相当的 app worker 数,可以充分的利用 CPU 资源
--https.key 指定 HTTPS 所需密钥文件的完整路径
--https.cert 指定 HTTPS 所需证书文件的完整路径
打赏作者
您的打赏是我前进的动力
微信
支付宝
评论

中午好👏🏻,我是 ✍🏻   疯狂 codding 中...

粽子

这有关于前端开发的技术文档和你分享。

相信你可以在这里找到对你有用的知识和教程。

了解更多

目录

  1. 1. egg-cluster
  2. 2. egg-scripts
    1. 2.1. 安装
    2. 2.2. 配置脚本
    3. 2.3. 运行
    4. 2.4. 启动命令中支持以下参数