¿Cómo usar memcached en Django?
He visto todos los problemas al usar Memcached en proyectos de Django, que se considera
El tipo de caché más rápido y eficiente compatible de forma nativa con Django
Por instancias,
- ¿Por qué Memcache no funciona en mi Django?
- ¿Cómo configurar Memcache para Django en Google Cloud AppEngine?
- Django no usa el framework memcached
- memcache en django no funciona
- ¿Cómo usar memcached en el proyecto django?
- ¿Cómo se confirma que django está usando memcached?
- Configurando memcached con django
- ¿Qué pasos se necesitan para implementar Memcached en una aplicación Django?
- ¿Cómo usar memcached en el proyecto django?
Entonces, ¿cómo podemos usarlo?
Respuestas
Esta respuesta explica cómo instalar Memcached en Windows 10 y cómo integrarlo con Django a través de un cliente específico. Fue validado usando Memcached 1.4.4, Python 2.7 y Django 1.11.
En su proyecto Django, en settings.py, agregue el siguiente código en la parte inferior del archivo
SESSIONS_ENGINE='django.contrib.sessions.backends.cache' CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': '127.0.0.1:11211', } }Instale el cliente memcached para Python con su entorno virtual activo ( python-memcached )
pip install python-memcachedDescargue Memcached usando uno de los siguientes enlaces de descarga y extráigalo a una carpeta en particular
- http://downloads.northscale.com/memcached-win32-1.4.4-14.zip
- http://downloads.northscale.com/memcached-win64-1.4.4-14.zip
Abra la ubicación de esa carpeta en la Terminal o PowerShell y ejecute
.\memcached.exe -h
deberías conseguir algo como esto
Ejecute el siguiente comando (-m es para la cantidad de memoria que desea dedicar y -vvv es para extremadamente detallado)
.\memcached.exe -m 512 -vvv
En la vista que desea usar el caché, especifíquelo en urls.py como
from django.conf.urls import include, url from django.views.decorators.cache import cache_page from .views import IndexView urlpatterns = [ url(r'^$', cache_page(60*60)(IndexView.as_view()), name="index"), ]Vaya al proyecto Django, inicie el servidor y debería obtener resultados mucho mejores en su carga de tiempo.