Python 缓存一个大对象并快速从缓存中读取

Python 缓存一个大对象并快速从缓存中读取,python,caching,memcached,flask,Python,Caching,Memcached,Flask,我尝试flask cache缓存一个对象(大约800MB),如下所示: @cache.memoize(50000) def get_nmf_result(): return NMF_Recommendation(basis_path = app.config['BASIS_PATH'], coef_path = app.config['COEF_PATH'], mask

我尝试
flask cache
缓存一个对象(大约800MB),如下所示:

@cache.memoize(50000)
def get_nmf_result():
    return NMF_Recommendation(basis_path = app.config['BASIS_PATH'],
                              coef_path = app.config['COEF_PATH'],
                              mask_path = app.config['MASK_PATH'])
但是我发现(1)缓存需要相当长的时间

(2) 即使我缓存了它,它仍然需要相当长的时间才能从缓存中读取。这是否意味着当我读取缓存时,实际上我得到的是缓存的
副本
,而不是
引用


有人对缓存的快速存储和读取有什么想法吗?谢谢

Flask缓存使用Werkzeug缓存,该缓存使用酸洗库将任何缓存值序列化为二进制blob,因此该值可以保存在任何后端。对一个800MB的对象进行酸洗和解酸洗可能需要相当长的时间,特别是当它不是一个大字符串或类似“简单”的东西时


此时,我认为最好编写自己的缓存,根据您使用的后端和存储的数据类型进行定制。

您使用的是哪种缓存后端?在内存中存储数据的方法速度更快,但在您的情况下,它们会消耗大量内存。你真的需要缓存如此大量的数据吗?