【发布时间】:2021-07-01 07:59:41
【问题描述】:
我有一个 Python 类,我需要在处理时使用一些大小约为 300M 的映射数据。此过程将使用多个 Python 工作者运行。由于数据不会改变,但在处理过程中实现可能会发生变化,我正在寻找某种方法来为使用公共源的每个工作人员保留这些数据。换句话说,我想要一个实现,其中该数据不会为每个其他实例消耗内存,所有工作人员都应该能够使用映射而无需创建/使用相同的另一个副本。 这是我已经尝试过(或已经排除)的实现列表 -
- 添加一个
@classmethod并使用该类的 1 个实例运行每个工作人员。 - 使用全局变量。
- 在 ABC 中使用变量。
- 使用 LRU functool。
- 使用 Redis。
虽然,我已经尝试了上述实现类别,但我可能错过了以正确的方式使用它们。
谢谢
【问题讨论】:
标签: python-3.x celery