Задать вопрос

Какие есть пакеты для кэширования в djangо?

желательно чтобы:

— умели сохранять в файлы (чтобы на них можно было натравить nginx)

— имели теги (чтобы по тегам можно было найти закешированный контент и уладить в случае изменения связанного объекта)

— достаточно аккуратно использовались (например через декоратор)
  • Вопрос задан
  • 3023 просмотра
Подписаться 4 Оценить 2 комментария
Решения вопроса 1
a11aud
@a11aud
Несовсем понятно, что вы ищете, но отвечу следующим образом:

— в Django есть встроенный механизм кэширования с несколько стандартных бэкендов к нему — FileBackend, MemcacheBackend, DatabaseBackend (мог напутать в названиях, но суть та же). Вы сами выбираете, включать ли кэш и какой бэкэнд использовать в настройках (settings.py).

Имейте в виду, что для удобства разработки, удобнее всего использовать DummyBackend, а полную информацию можно прочитать в документации

— Если надо кэшировать большое количество queryset'ов и есть возможность использовать Redis, то рекомендую посмотреть в сторону решений с автоматической инвалидацией. Одним из лучших подобных инструментов считаю cacheops, кстати автор — наш соотечественник и уже писал о нем на Хабре.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
un1t
@un1t
В джанге есть механизмы кеширования, как уже упомянули выше. В паре проектов мы использовали следующую методику. На джанге поднимали сайт, на него натравливали wget рекрусивно, и скачивали весь сайт как html файлы и в таком виде разварачивали на продакшен. Понятно что это был простой промосайт без всяких авторизаций и прочих штук для которых необходимо взаимодействие с бакендом. А вообще в большинсте наших проектов джанга держит нагрузку без всякого кеширования. Последний проект держит 150000 человек в сутки совсем без кеша. Правда обычно у нас объемы данных не очень большие.
Ответ написан
MechanisM
@MechanisM
Посмотрите еще на django-cacheback для асинхронного сбрасывания кеша использует таски в celery.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы