我有一个Nodejs应用程序,其中包括用于正常运行时间的群集和用于错误处理的域。
现在实现零停机部署,我有一条指令,但我需要帮助才能将此指令转换为Nodejs代码(我需要一个示例)。
这是指示:
Instruction source - >幻灯片编号39
答案 0 :(得分:1)
对于100%的正常运行时间,无论您使用何种语言,道路都或多或少相同:
将会话令牌存储在数据库中,而不是存储在内存数组中。这将允许用户在交换版本后保持登录状态。
在Docker容器中运行服务器
当您需要运行新的服务器版本时,使用代理来处理交换容器。
我写了easy-deploy来处理这个问题,所以我不必担心每次都设置代理。
部署版本1
easy-deploy -p 80:80 -v some/path:other/path my-image:1
要部署新版本,只需运行带有更新标记名称的命令
easy-deploy -p 80:80 -v some/path:other/path my-image:2
代理人负责。
<{1}}将替换为my-image:1
,而不会丢弃任何请求。