Narzędzia:Jak sprawdzić zawartość pamięci podręcznej Django za pomocą memcached w Pythonie? Wersja
- Python 2.6.5
- Django 1.3.1
- memcached 1.4.10
- python-memcached 1,48
Memcached działa obecnie:
$ ps -ef | grep memcache
nobody 2993 1 0 16:46 ? 00:00:00 /usr/bin/memcached -m 64 -p 11211 -u nobody -l 127.0.0.1
Jestem usi ng memcached i pyton memcached z moim Django proj a ja ustawić go jak poniżej w settings.py
:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
'TIMEOUT': 86400,
},
}
mam ustawić pamięci podręcznej w kodzie:
from django.core.cache import cache
cache.set('countries', ['Canada', 'US'])
I wtedy otworzyć Django shell aby sprawdzić zawartość pamięci podręcznej:
>>> from django.core.cache import cache
>>> 'countries' in cache
True
>>> import memcache
>>> mc = memcache.Client(['127.0.0.1:11211'], debug=1)
>>> mc.get('countries')
>>>
Gdy używam pamięci podręcznej Django, countries
klucz istnieje. Jednak kiedy używam memcache Pythona, nie dostaję niczego dla krajów. Co robię źle powyżej?
Dla odniesienia django już nie domyślnie używa prefiksów jego kluczy pamięci podręcznej z dwukropkiem. Możesz jednak nadal to zrobić, używając opisanej tutaj opcji konfiguracji KEY_PREFIX. http://bit.ly/1lzFFPi –
Dlaczego chcesz skrócić adres URL [Django Cache Prefixing] (https://docs.djangoproject.com/en/dev/topics/cache/#cache-key-prefixing)? – tback
Zrobiłem to, ponieważ myślałem, że skończy mi się miejsce na komentarz. (Nie będę tego robić w przyszłości) –