我有一个带有松散包装类的 pandas 数据框,它为我的 django/DRF 应用程序提供元数据。该应用程序基本上是一种用户友好(非程序员)的方式来进行一些数据分析和验证。在请求之间,我希望能够保存数据框的状态,这样我就可以与数据进行一系列交互,但它不需要保存在数据库中(它只需要在浏览器会话中存活)。从这里查看 django 的会话框架是合乎逻辑的,但据我所知,会话数据应该是轻量级的,并且数据框对象不会 json 序列化。
因为我没有大量用户,并且我希望应用程序感觉像一个桌面站点,所以我正在考虑使用 django 缓存作为将数据帧对象保存在内存中的一种方式。所以把数据放在缓存中会像这样
>>> from django.core.cache import caches
>>> cache1 = caches['default']
>>> cache1.set(request.session._get_session_key, dataframe_object)
然后除了在以下请求中使用 get 来访问之外,其他相同。这是处理此工作流程的好方法,还是我应该使用另一个系统在内存中保存相当大的数据(5mb 到 100mb)?