
Кешування в Django
Бекенди кешу, кеш на рівні представлення, кеш фрагментів шаблону, низькорівневий API кешу, інвалідація кешу
1Який бекенд кешу за замовчуванням у Django, якщо конфігурацію не вказано?
Який бекенд кешу за замовчуванням у Django, якщо конфігурацію не вказано?
Відповідь
Django за замовчуванням використовує бекенд 'LocMemCache' (локальний кеш у пам'яті), який зберігає дані в пам'яті процесу Python. Цей бекенд простий і швидкий, але не зберігається між перезапусками сервера й не ділиться даними між різними процесами. Він підходить для розробки, але не рекомендований для багатопроцесних робочих середовищ.
2Який декоратор слід використати, щоб кешувати повну відповідь представлення на 15 хвилин?
Який декоратор слід використати, щоб кешувати повну відповідь представлення на 15 хвилин?
Відповідь
Декоратор cache_page із django.views.decorators.cache кешує повну HTTP-відповідь представлення. Параметром є час у секундах (15 хвилин = 900 секунд). Ключ кешу генерується автоматично з URL та параметрів запиту. Цей декоратор також обробляє відповідні HTTP-заголовки для кешування.
3Який правильний синтаксис template tag для кешування фрагмента шаблону на 5 хвилин?
Який правильний синтаксис template tag для кешування фрагмента шаблону на 5 хвилин?
Відповідь
Тег {% cache %} кешує фрагмент шаблону. Синтаксис — {% cache timeout cache_name %}...{% endcache %}. Перший аргумент — час у секундах (300 для 5 хвилин), другий — унікальне ім'я для ідентифікації цього фрагмента. Можна додати додаткові аргументи для варіювання кешу (наприклад, user.id).
Як отримати значення з кешу зі значенням за замовчуванням, якщо ключ не існує?
Який бекенд кешу рекомендований для застосунку Django у продакшені з кількома інстансами?
+17 питань зі співбесід
Інші теми співбесід Django
Основи Python
Об'єктно-орієнтований Python
Основи Django
Models Django - Основи
Django Views
Шаблони Django
Форми Django
Розширені QuerySets
Автентифікація Django
Django Middleware
Django Admin
Django REST Framework
Сигнали Django
Завантаження файлів
Сесії Django
Email у Django
Тестування Django
Безпека Django
Розгортання Django
Просунутий Django ORM
Продуктивність Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django в екосистемі мікросервісів
Користувацькі команди Django
Інтернаціоналізація Django
Патерни проєктування Django
Django Async та ASGI
Settings та конфігурація для production
Спостережуваність і моніторинг
Опануй Django для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно