J'essaie d'utiliser django-cache-machine pour mettre en cache des requêtes dans mon application, mais je veux utiliser Redis comme backend. The docs ne pas vraiment expliquer comment faire cela, mais the repository est rempli de références Redis, donc je suis sûr que c'est possible. Je veux m'assurer de bien faire les choses, donc je me demande si quelqu'un a déjà fait l'expérience de la configuration et peut-être plus important encore, sait s'il y a des mises en garde?django-cache-machine et Redis
Répondre
J'ai un peu d'expérience dans mon projet, un système de rapport qui génère des tables d'environ 50 millions d'enregistrements.
La base de données est Mysql et je pourrais montrer mes arrangements et modèles FYI.
paramètres:
# cache machine
CACHES = {
'default': {
'BACKEND': 'caching.backends.memcached.MemcachedCache',
'LOCATION': [
'127.0.0.1:11211',
],
'PREFIX': 'report:',
},
}
CACHE_COUNT_TIMEOUT = 60 * 24 # one day
CACHE_EMPTY_QUERYSETS = True
modèles:
class App(**CachingMixin**, models.Model):
**objects = CachingManager()**
name = models.CharField(max_length=64,
default='')
Notez que cache machine fonctionne bien pour query_set. filtre et compte, pas bon pour query_set. annoter ou agréger. Bien sûr, n'oubliez pas de lancer votre client memcache en premier. En cours d'exécution, vous pouvez voir les journaux de cache-machine dans votre fichier django * .log pour vous indiquer le cache à succès.
Dans vos paramètres définis:
CACHE_MACHINE_USE_REDIS = True
REDIS_BACKEND = Redis: //127.0.0.1: 6379 socket_timeout = 0,1
https://github.com/jbalogh/django-cache-machine/blob/master/caching/invalidation.py#L187 https://github.com/jbalogh/django-cache-machine/blob/master/caching/invalidation.py#L213
- 1. Redis et django
- 2. Redis modélisation et interrogation
- 3. Flask: Comment s'authentifier avec Flask-Redis et Redis
- 4. étrange comportement node.js et redis
- 5. Problème avec redis et php
- 6. Socket.io, Redis Store et IE
- 7. Redis et interroger les valeurs
- 8. Debug Redis, rails et sidekiq
- 9. travailler avec php et redis
- 10. resque, redis et rails 2.3.8
- 11. LuaSocket, Lua 5.2 et Redis
- 12. Données structurées Nodejs et redis
- 13. comportement redis-py et hgetall
- 14. Memcached et Redis Configuration et configuration
- 15. Redis: (erreur) ERR commande inconnue 'Redis-référence'
- 16. Redis Configuration
- 17. redis - inserts de masse et compteurs
- 18. Redis et resque dans la production
- 19. Redis | Réplication et stockage sur disque commun
- 20. Redis stockant et interrogeant des structures complexes
- 21. redis timeseries données et fuseaux horaires
- 22. Noeud js et propriété Redis Undefined JSON
- 23. Problème avec node.js et Redis-server?
- 24. Redis auth erreur avec Node.js et socket.io
- 25. nœud js utilisant simultanément Mongo et Redis
- 26. Redis: Comment i INCR et insérer?
- 27. Flux d'activité simple avec Django et Redis
- 28. stocker et utiliser des scripts LUA Redis
- 29. Node.js et Redis (hiredis) sur les fenêtres
- 30. Lancer Juggernaut et Redis avec l'application rails
S'il vous plaît noter, lors de l'établissement? CACHE_MACHINE_USE_REDIS = Vrai, django-cache-machine n'utilise pas réellement Redis pour mettre en cache vos objets de modèle, vous devez donc configurer memcached. Il utilise uniquement Redis pour stocker et manipuler les listes de vidage. –