我有一个向用户提供问题列表的网站。这组问题对所有用户都是一样的。我将这些问题存储在文本文件中。服务器运行时,此文件的内容不会更改。
我无法使用静态页面来显示这些问题,因为我有一些逻辑来决定何时显示哪个问题。
我想将这些问题缓存在内存中(而不是每次用户连接时都从硬盘驱动器中读取文件)。我正在使用Django 1.7。
我读过关于Django网站的缓存,我认为建议的方法(如memcached和数据库)对我的需求来说太重了。对我的情况有什么好处?使用全局变量?
谢谢!
答案 0 :(得分:0)
您可以使用https://docs.djangoproject.com/en/1.7/topics/cache/
中列出的缓存后端我没有尝试过自己的文件系统或本地内存缓存,我总是需要memcached,但看起来它们可用,其余的都是小菜一碟!
from django.core import cache
cache_key = 'questions'
questions = cache.cache.get(cache_key) # to get
if questions:
# use questions you fetched from cache
else:
questions = { 'question1': 'How are you?'} #Something serializable that has your questions
cache.cache.set(cache_key, questions)