我如何让SocketCluster重新启动文件更改
How do I get SocketCluster to restart on file change?
我正在运行http://socketcluster.io/,我想在文件更改时重新启动我的工人。然而,nodemon server.js
一旦试图重新启动,就会出现一个不断重复的墙:
1445633138359 - Origin: Worker (PID 44372)
[Error] Error: connect ECONNREFUSED /var/folders/fj/yzfd3_tn7xd0smz7j6s093mh0000gn/T/socketcluster/6879fe94-ed92-4188-b1d7-cb187a5ade4e_b68fcded6c/b0
at Object.exports._errnoException (util.js:874:11)
at exports._exceptionWithHostPort (util.js:897:20)
at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1063:14)
1445633138362 - Worker 0 exited - Exit code: 0
我如何安全地重新启动SocketCluster来加载新的更改?
nodemon
将SIGUSR2
信号发送给主(Master)进程。SocketCluster(正确地)将此解释为重新启动工作线程的请求。不幸的是,有一个开放的问题,事情不能正确关闭,错误到处飞。
有两个选项:
您可以添加链接问题中的代码:
house.addShutdownHandler(function(ctx, next){
socketCluster.killWorkers();
socketCluster.killBrokers();
next();
});
或使用forever
发送"重启一切"信号:
forever -w --killSignal=SIGTERM server.js
在SC 5.0.23或更高版本中对nodemon进行了改进。
确保在代码(server.js文件)中实例化SocketCluster时传递killMasterOnSignal: true
-该设置对于nodemon工作是必需的。
相关文章:
- 当我在重新启动cordova应用程序后尝试添加更多数据时,lokijs会丢失数据库和收集中的数据
- 重新启动jquery脚本后,角度停止工作
- Chrome内容脚本制作cookie;chrome重新启动时,cookie会被删除.如何使其稳定
- preventDefault之后的重新启动事件
- WebStorm,使用Node Supervisor(因此不必在每次代码更改后重新启动)
- 重新启动游戏jQuery功能不工作
- Web服务器意外退出,正在重新启动新实例
- 在变量中保存值的最佳方法是在应用程序关闭后使用,然后使用apachecordova在android中重新启动
- 重新启动画布 JavaScript
- Cordova创建的文件不会显示在Windows资源管理器中,除非重新启动设备
- 应用程序重新启动后追加到文件 - Phonegap
- 避免在文件更改时自动重新启动服务器流星
- 我如何让SocketCluster重新启动文件更改
- 编辑文件重新启动服务器在流星在windows
- Node.js -如何备份变量到一个文件,并在服务器重新启动时重新获得它
- 当映射文件更改时,不要重新启动IIS
- 节点-在编辑特定文件后重新启动服务器
- 如何在文件更改时重新启动节点服务器
- 直到应用程序重新启动(文件API)才显示对文件的修改
- 如果我重新启动应用程序池,客户端浏览器会引用我更新的javascript或css文件吗?