我使用Webrtc、nodejs、Expressjs作为框架来创建音频、视频和聊天应用程序。我使用了永久,这样脚本就可以连续运行。
因为我的应用程序处理音频,视频和聊天。用户的存在起着重要的作用。我们需要让系统始终运行,避免系统崩溃和重新启动。如果发生这种情况,我们将公开所有关于在线用户的信息。需要建议什么是最好的方法来避免这种情况。
另外,在将新特性转移到生产服务器时,我们应该考虑哪些步骤,这样应用程序就不会停止,从此就不会丢失用户信息。
如果服务器坏了或者我们不得不关闭它呢。有什么不同的技术可以使用,这样我们就不会在系统中泄露在线用户的存在信息,并恢复他们(如果必要的话)。
发布于 2013-08-29 06:26:16
1)使用节点集群对每个核进行多进程分叉。因此,如果一个进程死亡,另一个进程将自动启动。退房:http://nodejs.org/api/cluster.html
2)使用域来捕获asyn操作,而不是尝试捕获或未捕获的http://nodejs.org/api/domain.html。我不是说试着抓球或者裸露是个坏主意!
3)永远使用/监督你的服务
4)添加守护进程以运行节点应用程序:http://upstart.ubuntu.com
希望这能帮上忙!
我也在这篇文章中回答:How do I prevent node.js from crashing? try-catch doesn't work
https://stackoverflow.com/questions/18059700
复制相似问题