Что такое Мемкэш?
Memcached — это технология кэширования в памяти, используемая для повышения производительности сайта за счет сокращения доступа к базе данных. Он был создан в живом журнале для управления большими нагрузками, а затем был открыт исходным кодом Danga Interactive.
Как использовать в Джанго?
Я покажу вам различные формы реализации кэширования.
Чтобы установить memcached:
apt-get install memcached #to install memcached-server pip install python-memcached
Добавьте следующие настройки в settings.py:
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': 'unix:/tmp/memCached.sock', } }
Теперь было хорошо, чтобы начать кэширование.
from django.core.cache import cache cache.set(cache_key, result, cache_time) # to cache a value cache.set_many({'a': 1, 'b': 2, 'c': 3}) # to cache many keys cache.get(cache_key) # to retive a key from cache cache.get_many(['a', 'b', 'c']) # to retrive many keys from cache
Для использования в качестве декоратора:
from django.views.decorators.cache import cache_page @cache_page(60 * 10) def home_view(request): #this code will cache the page for 10 mins.
Для кэширования на уровне шаблона:
{% load cache %} ... not cached content here ... {% cache cache_key %} cached content here {% endcache %}
Если вы хотите удалить определенный ключ из кеша или очистить весь кеш.
cache.delete('a') # where a is key cache.delete_many(['a', 'b', 'c']) cache.clear()
Это почти все способы обработки кэширования.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube,и Discord. Заинтересованы в Взлом роста? Ознакомьтесь с разделом Схема.