bases_de_donnees:redis
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
bases_de_donnees:redis [2022/12/15 02:24] – [Listes] sgariepy | bases_de_donnees:redis [2023/06/06 17:05] – [Keyspace Notifications] sgariepy | ||
---|---|---|---|
Ligne 16: | Ligne 16: | ||
redis-cli | redis-cli | ||
+ | ou bien: | ||
+ | redis-cli -h localhost -p 6379 -a password | ||
====== Commands ====== | ====== Commands ====== | ||
* Basic values (string): SET, GET | * Basic values (string): SET, GET | ||
* HashMaps: HSET, HGET, HMGET (Get multiple keys) | * HashMaps: HSET, HGET, HMGET (Get multiple keys) | ||
+ | |||
+ | |||
+ | ====== Keys and Scan ====== | ||
+ | |||
+ | |||
+ | < | ||
+ | KEYS somekey:* | ||
+ | </ | ||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | SCAN 0 COUNT 50 MATCH somekey:* | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
Ligne 71: | Ligne 90: | ||
"last element" | "last element" | ||
(integer) 4 | (integer) 4 | ||
+ | > LPOP mylist 3 | ||
+ | 1) " | ||
+ | 2) " | ||
+ | 3) " | ||
+ | </ | ||
+ | |||
+ | |||
+ | * FIFO Queue: using RPUSH with LPOP | ||
+ | * LIFO Queue: using LPUSH with LPOP | ||
+ | |||
+ | |||
+ | < | ||
+ | > LPUSH mylist " | ||
+ | (integer) 4 | ||
+ | > LRANGE mylist 0 1 | ||
+ | 1) "last element" | ||
+ | 2) " | ||
+ | > LRANGE mylist 0 -1 | ||
+ | 1) "last element" | ||
+ | 2) " | ||
+ | 3) " | ||
+ | 4) " | ||
+ | </ | ||
+ | |||
+ | INSERT | ||
+ | |||
+ | |||
+ | < | ||
+ | > LINSERT mylist AFTER " | ||
+ | (integer) 5 | ||
+ | > LRANGE mylist 0 -1 | ||
+ | 1) "last element" | ||
+ | 2) " | ||
+ | 3) " | ||
+ | 4) " | ||
+ | 5) " | ||
+ | </ | ||
+ | |||
+ | |||
+ | ====== Sets ====== | ||
+ | |||
+ | Set est une liste non ordonnée. | ||
+ | |||
+ | * SADD: Add to a set | ||
+ | * SPOP: Retrieve random element from set | ||
+ | * SREM: Remove element from set | ||
+ | * SMEMBERS [queuename]: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | < | ||
+ | SADD thequeue " | ||
+ | SMEMBERS thequeue | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Utilisation comme Message Broker ====== | ||
+ | |||
+ | SUBSCRIBE <channel name> | ||
+ | |||
+ | Sur un client Consumer: | ||
+ | < | ||
+ | SUBSCRIBE notifications | ||
+ | </ | ||
+ | |||
+ | Sur un autre client Producer: | ||
+ | |||
+ | < | ||
+ | PUBLISH notifications "Ici un message important" | ||
+ | </ | ||
+ | |||
+ | Le message apparaîtra sur le client subcriber. | ||
+ | |||
+ | |||
+ | ====== Leaderboard ====== | ||
+ | |||
+ | < | ||
+ | ZADD leaderboard 200 " | ||
+ | ZADD leaderboard 240 " | ||
+ | ZADD leaderboard 100 " | ||
+ | ZADD leaderboard 180 " | ||
+ | ZADD leaderboard 320 " | ||
+ | ZRANGE leaderboard 0 5 | ||
+ | </ | ||
+ | |||
+ | Par défaut, c'est ordonné dans un sens ascendant. | ||
+ | |||
+ | ZREVRANGE leaderboard 0 5 | ||
+ | |||
+ | Mise à jour des points: | ||
+ | |||
+ | ZINCRBY leaderboard 440 " | ||
+ | |||
+ | |||
+ | |||
+ | ====== Keyspace Notifications ====== | ||
+ | |||
+ | Il faut configurer cela pour pouvoir // | ||
+ | |||
+ | Avec le '' | ||
+ | |||
+ | > config set notify-keyspace-events KEx | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | ===== Configuration par fichier ===== | ||
+ | |||
+ | Si on utilise une image Bitnami de Redis, on a la possibilité de spécifier un fichier de configuration '' | ||
+ | |||
+ | < | ||
+ | notify-keyspace-events " | ||
+ | </ | ||
+ | |||
+ | Ensuite dans le '' | ||
+ | |||
+ | < | ||
+ | - ./ | ||
</ | </ |
bases_de_donnees/redis.txt · Dernière modification : 2024/06/11 16:59 de sgariepy