如何Django处理同时发生的并发请求全局variables?

我有一个通过Apache / mod_wsgi托pipe的django实例。 我使用pre_savepost_save信号来保存之前和之后的值以供以后比较。 为此,我使用全局variables来存储可以在post_save信号处理程序中访问的pre_save值。

我的问题是,如果两个请求A和B同时请求同一个Web服务,它会并发吗? B不应读取由A写入的全局variables,反之亦然。

PS:我不使用任何线程Lockvariables。

这部分取决于你的mod_wsgi配置。 如果您将其配置为每个进程只使用一个线程,那么全局变量是安全的 – 尽管我不推荐使用它们,原因很多。 在多线程配置中,如果使用全局变量,则不保证请求不会混淆。

你应该能够找到更多的地方来存储pre_savepost_save之间需要的数据。 我建议在设计中多加一些思考。