J'ai entendu parler de redis-cache mais comment cela fonctionne-t-il exactement? Est-il utilisé comme couche entre django et mes rdbms, en mettant en cache les requêtes rdbms d'une manière ou d'une autre?Comment utiliser redis avec Django?
Ou est-il supposé être utilisé directement comme base de données? Ce dont je doute, puisque cette page github ne couvre pas les détails de connexion, aucune configuration .. vous dit juste de définir une propriété de configuration.
Mais comment vérifiez-vous que le cache sur Redis doit être mis à jour? Comparez-vous le nombre d'enregistrements ou y a-t-il un meilleur moyen? – Marconi
Cela se fait généralement en définissant un TTL pour la clé: http://redis.io/commands/ttl. Si la clé expire, vous devez aller à la base de données. Donc, si la clé est en rouge, alors vous l'utilisez. Notez que la simple implémentation de ceci pose quelques problèmes: quand une clé populaire expire vous avez http://en.wikipedia.org/wiki/Thundering_herd_problem, vous voulez utiliser http://en.wikipedia.org/wiki/Negative_cache, et votre DB a besoin http://en.wikipedia.org/wiki/Admission_control –
Pourriez-vous définir "compatible API"? Le protocole est certainement différent. Pour citer l'auteur de Redis «Fondamentalement dans le protocole memcached la longueur de la charge utile était l'un des arguments séparés par un espace, tandis que dans le protocole Redis est à décalage fixe (il y a juste un caractère" $ ")» (Source: http: //antirez.com/post/redis-memcached-benchmark.html) Cependant, il est vrai que puisque les deux sont clé/valeur magasin, il devrait être assez simple d'adapter le code en utilisant Memcached à l'aide de Redis à la place. Ma meilleure idée est que vous vouliez dire "vous pouvez remplacer un module/classe par un autre", n'est-ce pas? – jpetazzo