node.js - node为什么经常跑着跑着自己断了
PHPz
PHPz 2017-04-17 11:06:17
[Node.js讨论组]

如题求解。是因为服务器问题吗。。我的单核的服务器速度凑活。是并发量的问题还是?

PHPz
PHPz

学习是最好的投资!

全部回复(3)
ringa_lee

Node 是单进程,有异常容易crash掉整个进程,,所以要做好异常处理,相对forever,更推荐 pm2,单进程挂了就不能服务,pm2 一个参数就可以启动多个进程服务(不用写任何代码!!!),一个挂了还有其他的可以服务,pm2也会监控进程的状态。

https://github.com/Unitech/pm2

http://devo.ps/blog/2013/06/26/goodbye-node-forever-hello-pm2.html

怪我咯

建议查下日志。如果日志不够详细,可以考虑修改程序,把error等都log下来,最简单的做法是用console.log。

另外,forever 可以自动重启服务。

ringa_lee

node的单线程导致了一旦遇到错误就会直接宕掉,而且由于其事件队列的机制,用try,catch经常抓不到错误,所以每个回调函数的err都要确定好处理错误的函数,最好能专门定义一系列异常事件来专门处理异常。

forever确实可以自动重启服务,不过不知道是不是我用的有问题,之前用它搭网站的时候,一旦出错,服务虽然会重启,但是session什么的都会丢失,很头疼...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号