उपकरण संस्करण:मैं पाइथन memcached के साथ एक Django कैश की सामग्री कैसे जांचूं?
- अजगर 2.6.5
- Django 1.3.1
- memcached 1.4.10
- अजगर-memcached 1,48
Memcached अभी चल रहा है:
$ 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
मैं यूएसआई हूं एनजी memcached और अजगर मेरी Django proj के साथ memcached और मैं इसे की तरह settings.py
में निम्नलिखित निर्धारित किया है:
from django.core.cache import cache
cache.set('countries', ['Canada', 'US'])
मैं तो एक Django खोलें:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
'TIMEOUT': 86400,
},
}
मैं कोड में कैश निर्धारित किया है कैश की सामग्री का निरीक्षण करने के शैल:
>>> 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')
>>>
जब मैं Django के कैश का उपयोग करें, countries
कुंजी मौजूद है। हालांकि, जब मैं पायथन के memcache का उपयोग करता हूं, मुझे देशों के लिए कुछ भी नहीं मिलता है। मैं ऊपर क्या गलत कर रहा हूँ?
संदर्भ के लिए django अब डिफ़ॉल्ट रूप से कोलन के साथ अपनी कैश कुंजी का उपसर्ग नहीं करता है। हालांकि आप अभी भी वर्णित KEY_PREFIX कॉन्फ़िगरेशन विकल्प का उपयोग कर ऐसा कर सकते हैं। http://bit.ly/1lzFFPi –
आप [Django कैश कुंजी उपसर्ग] को कम क्यों करेंगे (https://docs.djangoproject.com/en/dev/topics/cache/#cache-key-prefixing) यूआरएल? – tback
मैंने ऐसा इसलिए किया क्योंकि मैं सोच रहा था कि मैं टिप्पणी स्थान से बाहर निकलने जा रहा था। (मैं इसे भविष्य में नहीं करूँगा) –