我即将开始使用Node,Express和Mongo的项目,但有一个重要问题我必须先解决. 说我有一个正在运行的应用程序迟早,我会再次编码,并希望部署更改.到目前为止,我只在开发模式下工作,因此执行
说我有一个正在运行的应用程序迟早,我会再次编码,并希望部署更改.到目前为止,我只在开发模式下工作,因此执行^ C并重新启动服务器不是问题.
在制作中怎么样?显然,我不能一次性丢弃服务器和所有用户.有没有办法在不中断服务的情况下部署更改?
我已经研究过像暴发户和类似的系统,但它没有解决问题(或者我错过了什么?).我正在考虑建立一种故障转移,但有人必须在我之前做到这一点……
好吧,我可能会使用像nginx这样的反向代理:低内存占用,能够处理大量的同时连接,并且当我最终拥有多个服务器时支持故障转移.有了这个nginx反向代理,我可以用更新的源启动一个新的Node进程,让nginx切换到新的Node并删除旧版本.
这也将允许我在服务器上保留以前版本的应用程序,以防万一新版本崩溃得太早……
链接:
http://nginx.org/en/docs/control.html