我正在寻找高层次的洞察力,因为有人来自PHP生态系统。将更新部署到单个服务器(无负载平衡节点)上的实时Flask应用程序的常见方法是什么,由一些WSGI(如Gungin在Nginx后面)提供服务?
具体来说,当您将更新从git存储库或rsync文件提取到服务器时,我假设这会留下一个小窗口,当应用程序的文件发生变化时,请求可以通过该窗口。
我主要部署了Laravel应用程序用于生产,因此要防止这种情况,请使用php artisan up
在文件复制时启动维护页面,并@Override
public void onStartup(ServletContext servletContext) throws ServletException {
WebApplicationContext rootAppContext = createRootApplicationContext(servletContext);
if (rootAppContext != null) {
servletContext.addListener(new RequestContextListener());
}
else {
logger.debug("No ContextLoaderListener registered");
}
}
在完成所有操作后将网站重新启动
与Flask相同的是什么,还是有其他方法可以解决这个问题(Nginx配置)?
由于
答案 0 :(得分:0)
看起来Docker可能是我最好的选择: