gpt4 book ai didi

django - 带有fastcgi和线程的Django

转载 作者:行者123 更新时间:2023-12-03 13:18:07 25 4
gpt4 key购买 nike

我有一个Django应用程序,该应用程序使用Pyro生成了一个与另一台服务器通信的线程。

不幸的是,似乎在fastcgi下,该线程的多个版本被触发,而在我的程序中应该是全局恒定的字典却没有。 (有时它具有我期望的值,有时没有)

确保django/fastcgi应用程序中的字典只有一个副本的最佳方法是什么?

最佳答案

我强烈建议不要在Django中依赖全局的任何东西。问题是,就像您似乎遇到的那样,部署的类型将决定如何(或是否)共享此全局状态。要成为样式纳粹,那是与代码完全不同的抽象级别,后者依赖于对一致全局状态的某种保证。

我没有使用fastcgi的经验,但是我的理解是,它与许多其他框架一样,具有预分支和线程模式。在预 fork 模式下,您运行Python代码的进程是独立的,而不是线程。这是共享全局状态的噩梦。

除非有一些可能的可行解决方案,而且有人可能建议也可能不建议这样做,否则,您真正可以依靠的唯一持久性是数据库中的持久性,在较小程度上,无论您选择哪种caching mechanism。您可以使用low-level api缓存和检索键和值。

关于django - 带有fastcgi和线程的Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2298515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com