2017-09-05 126 views
0

一段时间以来,我一直在使用mod_wsgi和全局变量。全球变量在过去的会话中一直保持不变。突然间,他们没有坚持下去。每个请求加载一个新的实例,持久性丢失。Apache mod_wsgi python变量持久性

我想执行wsgi(现在)记住以前请求的变量。是否有Apache配置选项,如守护进程选项或中间件可以强制执行我以前的行为?

回答

1

听起来像这个问题可能是你以前使用mod_wsgi的守护进程模式,默认情况下是一个进程,然后分开Apache/mod_wsgi配置,并退回到使用mod_wsgi的嵌入模式,这意味着你受制于任何Apache配置。尽管Apache配置通常是多进程的。

参见:

所以确认你在嵌入式模式或守护进程模式是否有效。

您也可以验证是否在多进程或多线程配置。

你也可以这样做:

import mod_wsgi 
print(mod_wsgi.maximum_processes) 
print(mod_wsgi.threads_per_process) 

,以确认你下运行什么样的配置。