防止 CherryPy 自动重新加载
Prevent CherryPy from automatically reloading
Stack Overflow 上还没有人问过这个问题,这让我感到困惑,但我给了它一个诚实的搜索...
我目前正在使用 CherryPy(以及路由和 Mako,以防相关)开发一个简单的 Web 应用程序。除了 CherryPy 拥有的一些 非常有用 机制外,一切进展顺利每当我更改代码时,它都会自动重新加载服务器进程;不可避免地,这将与我的 IDE 的调试器发生冲突,由于代码编写一半而崩溃,并留下一个在相关端口上侦听的无效进程,导致以后的服务器进程拒绝 运行 直到我从任务管理器手动强制退出它。
环顾四周,听起来这可以通过在初始化时传递给 CherryPy 的配置字典来禁用,例如
conf = {'/': {'request.dispatch': d, 'engine.autoreload.on' : False}}
cherrypy.tree.mount(root=None, config=conf)
但这似乎并没有改变任何东西。我在这里遗漏了什么吗?
您必须在 global
namespace because is part of the engine 上配置自动重新加载:
app_conf = {'/': {'request.dispatch': d}}
cherrypy.config.update({
'global': {
'engine.autoreload.on' : False
}
})
cherrypy.tree.mount(root=None, config=app_conf)
或者设置生产环境更好:
cherrypy.config.update({
'global': {
'environment' : 'production'
}
})
这将禁用自动重新加载 among other things。
Stack Overflow 上还没有人问过这个问题,这让我感到困惑,但我给了它一个诚实的搜索...
我目前正在使用 CherryPy(以及路由和 Mako,以防相关)开发一个简单的 Web 应用程序。除了 CherryPy 拥有的一些 非常有用 机制外,一切进展顺利每当我更改代码时,它都会自动重新加载服务器进程;不可避免地,这将与我的 IDE 的调试器发生冲突,由于代码编写一半而崩溃,并留下一个在相关端口上侦听的无效进程,导致以后的服务器进程拒绝 运行 直到我从任务管理器手动强制退出它。
环顾四周,听起来这可以通过在初始化时传递给 CherryPy 的配置字典来禁用,例如
conf = {'/': {'request.dispatch': d, 'engine.autoreload.on' : False}}
cherrypy.tree.mount(root=None, config=conf)
但这似乎并没有改变任何东西。我在这里遗漏了什么吗?
您必须在 global
namespace because is part of the engine 上配置自动重新加载:
app_conf = {'/': {'request.dispatch': d}}
cherrypy.config.update({
'global': {
'engine.autoreload.on' : False
}
})
cherrypy.tree.mount(root=None, config=app_conf)
或者设置生产环境更好:
cherrypy.config.update({
'global': {
'environment' : 'production'
}
})
这将禁用自动重新加载 among other things。