我有一个通过Apache / mod_wsgi托pipe的django实例。 我使用pre_save
和post_save
信号来保存之前和之后的值以供以后比较。 为此,我使用全局variables来存储可以在post_save
信号处理程序中访问的pre_save
值。
我的问题是,如果两个请求A和B同时请求同一个Web服务,它会并发吗? B不应读取由A写入的全局variables,反之亦然。
PS:我不使用任何线程Lock
variables。
这部分取决于你的mod_wsgi
配置。 如果您将其配置为每个进程只使用一个线程,那么全局变量是安全的 – 尽管我不推荐使用它们,原因很多。 在多线程配置中,如果使用全局变量,则不保证请求不会混淆。
你应该能够找到更多的地方来存储pre_save
和post_save
之间需要的数据。 我建议在设计中多加一些思考。