Redis
 sql >> Base de données >  >> NoSQL >> Redis

quelle est la différence moyenne entre Nest et les gemmes d'espace de noms redis lorsque nous utilisons redis avec rails/ruby

Avertissement :Je suis l'auteur de Nest.

Vous pouvez accomplir la même chose avec les deux bibliothèques, et je pense que le principal différenciateur entre ces outils est leur complexité interne. Alors que Nest ne vous aide qu'à représenter la structure avec des touches plates, Redis ::Namespace a une table de traduction pour chaque commande et c'est donc plus fragile et gourmand en CPU.

Jetez un œil au code source des deux outils pour voir ce que je veux dire :

https://github.com/soveran/nest/blob/master/lib/nest.rb

https://github.com/resque/redis-namespace/blob/master/lib/redis/namespace.rb

Cela dit, la bonne solution au problème que vous avez décrit consiste à disposer d'instances Redis distinctes pour différents projets. Considérez que l'espace de clés n'est qu'un aspect à prendre en compte (qui pourrait également être résolu facilement avec les différentes bases de données fournies par Redis). Les autres aspects (stratégie de persistance, limites de connexion et de mémoire, évictions de clés, etc.) sont généralement affinés en fonction de la nature du projet.

Un autre fait important est que Redis est à thread unique et que de nombreuses applications l'utilisent, vous êtes susceptible de partager le même noyau pour toutes les requêtes. Dans cet esprit, avoir différentes instances Redis vous aide à paralléliser le travail.