Modules Redis expliqués
Redis, par défaut, propose plusieurs types de données et d'énormes commandes pour fonctionner sur ces structures de données. Avec la croissance de la complexité des applications modernes, la demande de nouvelles commandes et structures redis augmente.
Les modules Redis sont destinés à combler cette lacune entre les fonctionnalités Redis existantes et la demande croissante de nouvelles exigences fonctionnelles. Ils peuvent améliorer les fonctionnalités Redis existantes avec de nouvelles commandes et structures de données qui fournissent des fonctionnalités avancées sans modifier le code de base redis.
La plupart des modules redis sont écrits en langue C en exportant l'API C en tant que fichier d'en-tête unique appelé «Redismodule.h ”. De plus, des langues comme C ++ qui prennent en charge les liaisons C peuvent être utilisées pour implémenter les modules Redis.
L'illustration de haut niveau donnée illustre comment les modules s'intègrent à Redis Core à l'aide de l'API des modules. De plus, l'API des modules est l'endroit où la plupart des efforts ont été faits. Il résume et isole les internes redis des modules et agit comme le contrat de liaison C du serveur. De plus, un module est enregistré dans le Core Redis avec une version API de module spécifique.
Par exemple, vous pouvez créer le vôtre BONJOUR LE MONDE module avec un IMPRIMER commande en haut de la commande echo qui vient de redis noyau. Cela ressemble à ce qui suit:
Comme vous pouvez le voir dans l'illustration, vous pouvez toujours communiquer ou appeler les commandes et structures de données Redis Core à l'aide des modules API et améliorer les fonctionnalités existantes avec votre propre commande ou structure comme dans The Helloworld module.
La plupart des travaux sont avec l'implémentation du module avec le langage C en consommant l'API des modules en cas de besoin. Ensuite, il s'agit de charger le module compilé avec le serveur redis à l'exécution ou d'utiliser le redis.Directive de fichier de configuration de Conf.
Dans ce guide, nous ne nous concentrerons pas sur le développement des modules avec C ou C ++, mais nous discuterons davantage du chargement et du déchargement des modules Redis disponibles. Certains des modules Redis largement populaires sont répertoriés dans ce qui suit:
Chargement et déchargement du module Redis
Aujourd'hui, un certain nombre de modules prédéveloppés peuvent être trouvés dans la bibliothèque des modules Redis qui sont développés à des fins et exigences différentes. Pour consommer un ou plusieurs modules de votre application, il doit d'abord être chargé sur le serveur redis.
Commande de chargement du module Redis
La commande de chargement du module est une commande redis intégrée qui est utilisée pour charger un module donné d'une bibliothèque dynamique. De plus, cette commande fait également le processus d'initialisation du module. Cette commande accepte un argument de chemin qui spécifie l'emplacement de la bibliothèque du module avec le nom du module. Plus important encore, la commande a une complexité de temps constante qui fonctionne rapidement.
Syntaxe:
Module charge module_path [arg [arg…]]Module_path: Le chemin d'emplacement absolu vers la bibliothèque avec le nom du fichier du module.
Arg: Des arguments supplémentaires peuvent être transmis au module mais il n'est pas obligatoire.
Avant de charger le module, il est indispensable de cloner le code source du module et la construction qui produira un «.SO FICHIER. Ce ".L'emplacement du fichier doit donc être fourni comme le chemin argument.
Si le module est chargé correctement, le D'ACCORD La réponse de la chaîne est retournée.
D'un autre côté, un module chargé peut également être déchargé. Dans ce cas, le déchargement du module peut être effectué lors de l'exécution à l'aide de la commande de déchargement du module.
Commande de déchargement du module Redis
La commande de déchargement du module débranche un module redis déjà chargé du serveur. Cette commande n'accepte qu'un seul argument obligatoire qui est le nom du module. Le nom du module doit être celui rapporté par la commande de liste de modules. Il est donc important de garder à l'esprit que ce nom peut être différent de celui affiché dans le nom du fichier de bibliothèque du module.
Syntaxe:
Module de déchargement module_nameModule_name: Le nom du module rapporté par la commande de liste de modules comme indiqué dans les éléments suivants:
Une chose à noter est que les structures de données personnalisées enregistrées avec un module ne peuvent pas être déchargées avec la commande de déchargement du module.
Conclusion
Pour conclure, les modules Redis sont utilisés pour étendre les fonctionnalités des commandes et structures Redis Core. Comme mentionné, un module est une seule unité qui est construite au-dessus de la commande Redis existante ou de la ou des structures en utilisant des langages de liaison C comme C ou C++. Il utilise fortement l'API Redis Modules pour communiquer avec le cœur et d'autres modules. Selon l'explication donnée, pour utiliser un module Redis déjà implémenté dans votre application, il doit être chargé à l'aide de la commande de chargement du module à l'exécution. De même, le déchargement est effectué par la commande de déchargement du module.