【发布时间】:2018-09-30 06:34:42
【问题描述】:
总结:
我想缓存从 FileField 读取的文件,以优化 DRF api 的性能。
背景:
系统允许用户上传数据文件(类似 csv)并使用 FileField(django/djangorestframework 后端)存储这些文件的链接。
模型对象具有作用于存储在 FileField 文件中的数据的附加方法...即获取列名、行数、特定数据查询(从 ix 0 -> 10 的列 A)
这些方法中的每一个都需要在返回数据之前读取文件。
我发现每次查询所需的文件对象加载和重新加载都会消耗大量 CPU 和响应时间。
有没有一种聪明的方法来缓存已经读入的文件(有超时)并让 django 阻止重新加载已经缓存的文件?
我看到了一些关于 memcached 的信息,但这似乎更适合缓存特定的 API 调用,而不是底层的 DB 对象/数据。
感谢您的帮助!
【问题讨论】:
标签: django python-3.x caching django-rest-framework