Python Tornado在停止时如何处理活动请求?
这个问题几乎说明了一切。如果我在有主管的服务器上运行Tornado,当我部署代码并需要重新启动Tornado服务器时,活动请求会发生什么情况?他们在请求中被丢弃了吗?允许他们完成吗?监督员发送一个类似HUP或TERM to tornado过程的信号,最重要的一点是tornado如何处理它 不幸的是,当龙卷风得到HUP,TERM,INT这样的信号时,它将简单地退出 Tornado有一个名为autoreload的子模块,它使应用程序能够检测代码文件的更改并重新加载应用程序,但它只在一个进程的调试模式下工作,而不在WSGI应用程序中工作。这是一个开发工具 但是,我们可以在run tornado.autoreload.\u reload函数中手动定义一个函数,并将其注册为HUP sigal。重新加载时应调用can add函数 因为tornado不能在fork模式下很好地管理进程,所以建议为不同的端口运行许多独立的进程。在此模式下,_重新加载的工作方式类似于设置调试标志Python Tornado在停止时如何处理活动请求?,python,tornado,supervisord,Python,Tornado,Supervisord,这个问题几乎说明了一切。如果我在有主管的服务器上运行Tornado,当我部署代码并需要重新启动Tornado服务器时,活动请求会发生什么情况?他们在请求中被丢弃了吗?允许他们完成吗?监督员发送一个类似HUP或TERM to tornado过程的信号,最重要的一点是tornado如何处理它 不幸的是,当龙卷风得到HUP,TERM,INT这样的信号时,它将简单地退出 Tornado有一个名为autoreload的子模块,它使应用程序能够检测代码文件的更改并重新加载应用程序,但它只在一个进程的调试模式
毕竟,测试并基准测试它,以确保它在您的应用程序中运行良好。这不是一个真正的问题;supervisord将使用SIGTERM以与其他任何操作相同的方式重新启动守护进程。