跳转到主要内容

为开发提供健壮的WSGI自动重载。

项目描述

‘paster serve –reload config.ini’的替代品。

在源代码更改时重载WSGI应用程序。在更改有语法错误时保持旧代码存活。永远不会关闭套接字,永远不会拒绝连接。

截至版本0.3,ReloadWSGI还支持重载配置文件中指定的服务器。这对于例如mongrel2_wsgi这样的wsgi服务器是合适的,它们能够支持两个并发实例而不会干扰彼此的网络连接。一旦ReloadWSGI确认第二个服务器可以加载而不抛出例如语法错误,原始服务器就会退出,Mongrel2的自动负载均衡会将请求发送到较新的实例。

进程ID 4197通知我们quux.py发生了变化

quux.py changed; reloading...
{'status': 'changed', 'pid': 4197}

哦,不!我们不小心把“foobar”打成了“import foobar”!

Process Process-4:
Traceback (most recent call last):
 ...
  File "quux.py", line 6, in <module>
    foobar
NameError: name 'foobar' is not defined

我们可以访问我们的网站吗?YES!

127.0.0.1 - - [03/Mar/2010 09:41:52] "GET /orders HTTP/1.1" 200 2345

进程ID 4197通知我们quux.py发生了/另一个/的变化

quux.py changed; reloading...
{'status': 'changed', 'pid': 4197}

我们已经修复了我们的问题。一旦新进程加载,旧进程就会默默地退出

09:42:39,789 DEBUG [quux.run] App started.
{'status': 'loaded', 'pid': 4354}

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

ReloadWSGI-0.3.tar.gz (3.8 kB 查看哈希值)

上传时间 源代码

由以下支持