egg在dev环境下开启多进程
- 问题:
- eggjs在dev环境下无法使用多进程
app.messenger.sendToApp();
- eggjs在dev环境下无法使用多进程
- 解决:https://github.com/eggjs/egg/issues/4493
问题描述
- 默认的
package.json
// 版本信息
"dependencies": {
"egg": "^2.15.1",
"egg-scripts": "^2.11.0"
},
"devDependencies": {
"autod": "^3.0.1",
"autod-egg": "^1.1.0",
"egg-bin": "^4.11.0",
"egg-ci": "^1.11.0",
"egg-mock": "^3.21.0",
"eslint": "^5.13.0",
"eslint-config-egg": "^7.1.0"
},
// 启动脚本信息
"dev": "egg-bin dev"
默认以一个worker启动,反正我这边确实是这个情况
- app.js
module.exports = (app) => {
// 一个worker执行一次,由此可以判定worker进程个数
app.once('server', () => {
console.log(process.pid);
});
};
- 结果
解决
- 修改package.json脚本
"dev": "egg-bin dev --workers=4",
- 结果
为什么要开多进程?
我为了测试,为了校验自己写的在多进程环境下是否准确…✨