【发布时间】:2012-08-03 19:18:51
【问题描述】:
我正在运行一个带有 mod_wsgi 和 apache 的 TurboGears 应用程序,使用用 Ming 包裹的 pymongo 来实现持久性。为了防故障和扩展我的应用程序,我有兴趣通过 pymongo ReplicaSetConnection 使用 mongo 对副本集的支持。
但是,正如上面链接中所指定的,在处理完每个 pymongo ReplicaSetConnection 对象后,必须调用 close(),否则会留下一堆僵尸进程(wtf pymongo)。 Ming 不太支持这种行为(它实际上还没有真正支持 Replica Sets),但我设法编写了一个清理函数来关闭所有 pymongo 连接。
现在我想对我的所有应用进程的进程清理运行我的清理功能。它们有两个基本入口点:通过 apache 和 paste 命令的 mod_wsgi。将我的清理添加到 paste 命令中是没有问题的,但是有没有办法为 wsgi 进程指定清理功能?
如果没有,还有其他正确设置的建议吗?
【问题讨论】:
标签: python-2.7 replication mod-wsgi pymongo ming