关于eggjs热部署问题
AkashiX opened this issue · 4 comments
AkashiX commented
- Node Version: >= 7.x
- Egg Version: newest
- Plugin Name:
- Plugin Version:
- Platform: Windows 10
- Mini Showcase Repository:
生产环境的eggjs应用是否支持热部署?
ngot commented
目前egg推荐的是,先切走流量,重启,再切回流量的部署方式。
况且,Node.js 本来就无法做到真真完善的热重启。目前由的所谓热重启:
- 重启Worker: 无法控制流量,也无法保证正在处理的请求不终端。
- 删除require.cahe : 这个会造成内存泄露不能用。
tsui66 commented
通过删除require.cache : 这个会造成内存泄露不能用
的方案做热更新,能举个内存泄露例子吗?
tsui66 commented
atian25 commented
除了要自己构造模块引用关系表,以便清除所有引用到的地方,你要热更新的文件里如果创建了 timer,socket 等资源属性的东西清除前还要手动释放,我觉得这已经超出【注意点就行】的范畴了,花这么多精力,不去直接做 lb 多快