0

memcachedを使用してDjangoでセッションを設定していますが、ログインした後、キャッシュにアイテムが表示されません。

memcachedインスタンスに接続でき、プロセスが実行中であるとtelnet localhost 11211表示されます。stats私のキャッシュ設定は次のとおりです。

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache',
        'LOCATION': '127.0.0.1:11211' # can also be a list of locations
    }
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db'

そして、私はデータベースをキャッシュ用に設定しています。セッションはデータベースに表示されます。(backends.cache何も使用しない場合、データベースまたはキャッシュには表示されません。)

それで、これは予想される動作ですか?登録するには、セッションキーに特別なものを保存する必要がありますか?

4

3 に答える 3

0

私は1.2を使用していて、1.3のドキュメントを読んでいました。

1.2では、キャッシュは次のようCACHE_BACKEND = "memcached://127.0.0.1:11211/"になります。キャッシュディクショナリの代わりに。

于 2011-05-26T20:11:41.747 に答える
0

また、 https://docs.djangoproject.com/en/dev/topics/cache/?from = olddocs#the-per-site-cacheで説明されているように、2つのミドルウェアクラスをMIDDLEWARE_CLASSES設定に追加する必要があります 。

MIDDLEWARE_CLASSES =('django.middleware.cache.UpdateCacheMiddleware'、'django.middleware.common.CommonMiddleware'、'django.middleware.cache.FetchFromCacheMiddleware'、)

于 2011-06-08T03:02:53.323 に答える
0

以下のように使用django.core.cache.backends.locmem.LocMemCacheします

CACHES={
        "default":{
                    "BACKEND":"django.core.cache.backends.memcached.MemcachedCache",
                    "LOCATION": "127.0.0.1:11211"
                    },

        }
于 2014-02-08T14:14:48.493 に答える