Какие шаги необходимы для реализации memcached в приложении Django?

У меня есть мое существующее веб-приложение Django, которое использует MySQLDB без memcaching. Я хотел бы реализовать memcaching, чтобы улучшить отзывчивость этого сайта. Я вижу инструкции здесь .

Однако эти инструкции оставляют мне некоторые нерешенные вопросы. Это все, что мне нужно сделать, чтобы получить работу memcache после установки сервера memcached? Или мне нужно изменить любой из моего кода за пределами settings.py? Действительно ли Django обрабатывает все операции memcaching за кулисами для меня, когда модели читаются или записываются? (Если это так, это очень здорово!) Как я могу узнать, какое улучшение имеет memcaching для числа обращений к БД?

One Solution collect form web for “Какие шаги необходимы для реализации memcached в приложении Django?”

То, что вы сделали, это просто настройка Cache Backend.

Чтобы извлечь выгоду из кэширования, вам нужно найти места, где это уместно, и окажет положительное влияние на производительность: ваши взгляды , шаблоны. Вы можете кэшировать все виды, шаблоны, фрагменты шаблона и т. Д.

Если вы хотите, чтобы какая-то автоматизация вам помогла, взгляните на пакет Johnny Cache :

Johnny Cache – это структура кэширования для приложений django. Он работает с абстракцией кэширования django, но был разработан специально с учетом memcached. Его основной особенностью является патч на ORM Django, который автоматически кэширует все чтения в последовательном порядке.

Или пакет django-cache-machine :

Cache Machine обеспечивает автоматическое кэширование и аннулирование для моделей Django через ORM.

Существует также интересный проект под названием django-cacheops , целью которого является улучшение кэширования Django ORM, но он использует django-cacheops Redis .

Кроме того, django_debug_toolbar кэширования django_debug_toolbar поможет вам в будущем.

Обратите внимание, что в запросах django есть встроенный внутренний кеш, но он не имеет ничего общего с каркасом кэша.

Дальнейшее чтение:

  • Эффективное использование запросов Django
  • Кэширование и запросы
  • Как импортировать классы django.middleware в проект Google App Engine?
  • Как сказать Django, что memcached работает с размером элемента больше, чем по умолчанию?
  • Как я могу очистить memcache Google App Engine при каждом развертывании сайта?
  • Как я могу получить время истечения срока для конкретного элемента в memcached
  • Что делать, если я хочу сохранить значение None в memcache?
  • Поддерживать большой словарь в памяти для Django-Python?
  • Использование нескольких серверов memcache в пуле
  • Кэш-представление django с параметрами URL
  • Каков наилучший метод сериализации для объектов в memcached?
  • Как кэшировать результат запроса в django?
  • Какой хороший аналог Flask / Python / WSGI для общедоступных хранилищ PHP Apache, таких как apc_store / apc_fetch?
  • Python - лучший язык программирования в мире.