在cherrypy中重新加载单个模块?

时间:2014-02-13 18:29:40

标签: python cherrypy

是否可以在独立的cherrypy web应用程序中的单个模块上使用python reload命令(或类似命令)?我有一个基于CherryPy的Web应用程序,经常在不断使用。我会不时做出一个只影响一个模块的“重要”变化。我希望能够立即重新加载该模块,而不会影响Web应用程序的其余部分。诚然,完全重启是快速的,但是如果可能的话,我仍然希望避免几秒钟的停机时间。

1 个答案:

答案 0 :(得分:4)

重新加载模块非常非常难以理解。它导致代码中陈旧对象的潜在可能性,无法查询状态和微妙的错误。这不是你想要做的事情。

真正的Web应用程序往往要做的是让一台在其应用程序前保持活跃的服务器,例如带有mod_proxy的Apache,作为反向代理。您启动新的应用服务器,更改反向代理的路由,然后才终止旧的应用服务器。

没有停机时间。没有疯狂的,不可剔除的代码。

相关问题