Cacheに関するメモ書き
- 当機
- FreeBSD7.1-R
- database/memcached を ports経由でインストール
- http://gijsbert.org/cmemcache/ はmemcache.hが無いといわれてインストールできず。たぶん何かを忘れてる気配。
- python-memcached をインストール
- 設定とかは、Django’s cache framework | Django documentation | Djangoのまま。
地味にはまったところ(ボケとも言う)
- 以下のコードは駄目。
CACHE_NAME = 'test' def get_test (): if CACHE_NAME in cache: return cache.get(CACHE_NAME) b = model.object.all() cache.set(CACHE_NAME, b) return b
- 駄目な点
- if CACHE_NAME in cache はKey値があるかどうかの話で、cacheが切れた時を考えちょらん
- 修正点
CACHE_NAME = 'test' def get_test (): if CACHE_NAME in cache: c = cache.get(CACHE_NAME) if c: return c b = model.object.all() cache.set(CACHE_NAME, b) return b
- 疑問点(後で試すこと)
- cache.get(CACHE_NAME, model.object.all()) だと、cacheが切れても内容は更新される?