缓存通过烧瓶和芹菜查询的大数据

分享于2022年07月16日 caching celery flask python 问答
【问题标题】:Caching for large data queried via flask and celery缓存通过烧瓶和芹菜查询的大数据
【发布时间】:2022-07-16 01:46:02
【问题描述】:

我想提供在 python 中实现的内存 matrix format 特定域上计算的内存和 cpu 密集型聚合的结果。将数据加载到内存中需要一些时间,因此***将数据缓存在内存中,以便快速进行连续聚合。是否有一个内存中的 python 缓存解决方案可以理想地与烧瓶和芹菜一起使用?

我知道我可以使用 multiprocessing.Manager 自己实现此功能,以处理 Store large data or a service connection per Flask session 中所述的小型不可序列化数据,但我的问题是这是否可以使用 celery 的现有功能或其他一些包来实现。


【解决方案1】:

事实证明 celery 实现了一个 LRU cache ,它可以很容易地用于缓存大型资源以在任务之间共享。我发现这个例子非常有用: https://merin-rose-tom.medium.com/caching-in-celery-using-lrucache-357053251e96

【讨论】: