Redis基本数据类型和相关操作
Redis资料汇总 http://blog.nosqlfan.com/html/3537.html Redis命令参考 http://www.redisdoc.com/en/latest/ 在线尝试Redis网站 http://try.redis.io/ Redis: Re mote Di ctionary S erver Redis支持的健数据类型 字符串类型 string 散列表类型 hash 列表类
Redis资料汇总 http://blog.nosqlfan.com/html/3537.html
Redis命令参考 http://www.redisdoc.com/en/latest/
在线尝试Redis网站 http://try.redis.io/
Redis: Remote Dictionary Server
Redis支持的健值数据类型
字符串类型 string
散列表类型 hash
列表类型 list
集合类型 set
有序集合类型 zset
Redis安装
redis-server Redis服务器
redis-cli Redis命令行客户端
redis-benchmark 性能测试工具
redis-check-aof AOF文件修复工具
redis-check-dump RDB文件检查工具
Redis命令
KEYS pattern 获得符合规则的键名列表
EXISTS key 判断一个键是否存在
DEL key 删除一个键
TYPE key 获得键值的数据类型
字符串数据类型 STRING
字符串类型是Redis基本数据类型,能存储任何形式的字符串,包括二进制数据。
SET key value 赋值
GET key 取值
INCR key 递增数字(所有Redis命令都是原子操作)
Redis键命名实践 “对象类型:对象ID:对象属性”,对于多个单词推荐用.分割。如键user:1:friends表示ID为1的用户的好友列表。
INCRBY key increment 增加指定整数
DECRBY key decrement 减少指定的整数
INCRBYFLOAT key increment 增加指定浮点数
APPEND key value 向尾部追加值,返回追加后字符串的长度
STRLEN key 返回键值的长度
MGET key [key ...] 获取多个健值
MSET key value [key value ...] 设置多个键值
位操作
GETBIT key offset 获得一个字符串指定位置的二进制位的值(0或1)
SETBIT key offset value 设置字符串类型键指定位置的二进制值,返回该位置的旧值
BITCOUNT key [start] [end] 统计字符串类型中值为1的二进制位个数,可以指定字节的范围
BITOP operation destkey key [key...] (AND, OR, XOR, NOT)
散列类型 HASH
散列类型的键值也是一种字典结构,其存储了字段和字段值的映射,但字段值只能是字符串,不支持其他类型。(集合类型也不支持数据类型嵌套)
HSET key field value 赋值(插入时返回1,更新时返回0)
HGET key field 取值
HMSET key field value [field value ...]
HMGET key field [feild...]
HGETALL key
HEXISTS key field 判断字段是否存在
HSETNX key field value 当字段不存在时赋值
HINCRBY key field increment 增加数字
HDEL key field [field...] 删除字段
HKEYS key 只获取字段名
HVALS key 只获取字段值
HLEN key 获得字段数量
列表类型 LIST
列表类型可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素或者获得某个列表的某一个片段。
内部使用双向链表实现,获取越接近两端的元素速度就越快,不过索引访问元素比较慢。列表类型能非常快速地完成关系数据库难以应付的场景,如社交网络新鲜事。
LPUSH key value [value...] 从列表左边增加元素
RPUSH key value [value...] 从列表右边增加元素
LPOP key 从列表左边弹出元素
RPOP key 从列表右边弹出元素
LLEN key 获取列表中元素的个数
LRANGE key start stop 获取列表片段(包括stop,支持负数表示从最右边开始计数)
LREM key count value 删除前count个值为value的元素(count>0时从左边开始删除,count
LINDEX key index 获取指定索引的元素值
LSET key index value 设置指定索引的元素值
LTRIM key start end 只保留指定片段
LINSERT key FEFORE|AFTER pivot value 首先从左到右查找pivot元素,再根据第二个参赛将value插入该元素前面或后面。
RPOPLPUSH source destination 将一个元素转移到另一个列表 ,原子操作。当source和destination相同时会不断将对尾元素移到队首,实现网站监控系统。
集合类型 SET
集合类型每个元素不同,且无序。
SADD key member [member...] 增加元素,返回成功加入元素的个数
SREM key member [member...] 删除元素
SMEMBERS key 获得集合中所有元素
SISMEMBER key member 判断是否存在集合中
集合间运算
SDIFF [destination] key [key ...] 多个集合求差运算A-B,并存储到destination中
SINTER [destination] key [key ...] 多个集合执行交运算
SUNION [destination] key [key...] 多个集合求并运算
SCARD key 集合中元素个数
SRANDMEMEBER key [count] 随机获得集合中元素(当count>0时随机获取count个不重复元素,count
SPOP key 从集合中随机弹出一个元素
有序集合类型 ZSET
列表类型通过链表实现,获取靠近两端的数据速度极快,当元素增加后中间元素比较慢,更适合"新鲜事"或“日志”这样很少访问中间元素的应用。
有序集合类型通过散列表和跳跃表实现的,所以即使读取位于中间位置也很快O(NlgN)。
列表中不能简单调整某个元素位置,有序集合可以。有序集合更耗费内存。
ZADD key score member [score member...] 加入一个元素和该元素的分数(分数可以是整数或小数,+inf和-inf表示正负无穷)
ZSCORE key member 获得元素的分数
ZRANGE key start stop [WITHSCORE] 按照从从小到大的顺序返回start和stop之间所有元素(WITHSCORE表示带上分数)复杂度O(logn+m)
ZREVRANGE key start stop [WITHSCORE] 从大到小的顺序
ZRANGEBYSCORE key min max [WITHSCORE] [LIMIT offset count] 按照从小到大返回分数在min和max之间的元素
ZINCRBY key increment member 增加某个元素的分数
ZCARD key 获得集合中元素个数
ZCOUNT key min max 获得指定范围内的元素个数
ZREM key member [member ...] 删除一个或多个元素
ZREMRANGEBYRANK key start stop 按照元素分数从小到大的顺序删除指定排名范围内的所有元素,并返回删除元素的个数
ZREMRANGEBYSCORE key min max 删除指定分数范围内的所有元素
ZRANK key member 获得元素的排名
ZREVRANK key member

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der Redis -Cluster -Modus bietet Redis -Instanzen durch Sharding, die Skalierbarkeit und Verfügbarkeit verbessert. Die Bauschritte sind wie folgt: Erstellen Sie ungerade Redis -Instanzen mit verschiedenen Ports; Erstellen Sie 3 Sentinel -Instanzen, Monitor -Redis -Instanzen und Failover; Konfigurieren von Sentinel -Konfigurationsdateien, Informationen zur Überwachung von Redis -Instanzinformationen und Failover -Einstellungen hinzufügen. Konfigurieren von Redis -Instanzkonfigurationsdateien, aktivieren Sie den Cluster -Modus und geben Sie den Cluster -Informationsdateipfad an. Erstellen Sie die Datei nodes.conf, die Informationen zu jeder Redis -Instanz enthält. Starten Sie den Cluster, führen Sie den Befehl erstellen aus, um einen Cluster zu erstellen und die Anzahl der Replikate anzugeben. Melden Sie sich im Cluster an, um den Befehl cluster info auszuführen, um den Clusterstatus zu überprüfen. machen

So löschen Sie Redis -Daten: Verwenden Sie den Befehl Flushall, um alle Schlüsselwerte zu löschen. Verwenden Sie den Befehl flushdb, um den Schlüsselwert der aktuell ausgewählten Datenbank zu löschen. Verwenden Sie SELECT, um Datenbanken zu wechseln, und löschen Sie dann FlushDB, um mehrere Datenbanken zu löschen. Verwenden Sie den Befehl del, um einen bestimmten Schlüssel zu löschen. Verwenden Sie das Redis-Cli-Tool, um die Daten zu löschen.

Die Verwendung der REDIS -Anweisung erfordert die folgenden Schritte: Öffnen Sie den Redis -Client. Geben Sie den Befehl ein (Verbschlüsselwert). Bietet die erforderlichen Parameter (variiert von der Anweisung bis zur Anweisung). Drücken Sie die Eingabetaste, um den Befehl auszuführen. Redis gibt eine Antwort zurück, die das Ergebnis der Operation anzeigt (normalerweise in Ordnung oder -err).

Um die Operationen zu sperren, muss die Sperre durch den Befehl setNX erfasst werden und dann den Befehl Ablauf verwenden, um die Ablaufzeit festzulegen. Die spezifischen Schritte sind: (1) Verwenden Sie den Befehl setNX, um zu versuchen, ein Schlüsselwertpaar festzulegen; (2) Verwenden Sie den Befehl Ablauf, um die Ablaufzeit für die Sperre festzulegen. (3) Verwenden Sie den Befehl Del, um die Sperre zu löschen, wenn die Sperre nicht mehr benötigt wird.

Um eine Warteschlange aus Redis zu lesen, müssen Sie den Warteschlangenname erhalten, die Elemente mit dem Befehl LPOP lesen und die leere Warteschlange verarbeiten. Die spezifischen Schritte sind wie folgt: Holen Sie sich den Warteschlangenname: Nennen Sie ihn mit dem Präfix von "Warteschlange:" wie "Warteschlangen: My-Queue". Verwenden Sie den Befehl LPOP: Wischen Sie das Element aus dem Kopf der Warteschlange aus und geben Sie seinen Wert zurück, z. B. die LPOP-Warteschlange: my-queue. Verarbeitung leerer Warteschlangen: Wenn die Warteschlange leer ist, gibt LPOP NIL zurück, und Sie können überprüfen, ob die Warteschlange existiert, bevor Sie das Element lesen.

Redis verwendet Hash -Tabellen, um Daten zu speichern und unterstützt Datenstrukturen wie Zeichenfolgen, Listen, Hash -Tabellen, Sammlungen und geordnete Sammlungen. Ernähren sich weiterhin über Daten über Snapshots (RDB) und appendiert Mechanismen nur Schreibmechanismen. Redis verwendet die Master-Slave-Replikation, um die Datenverfügbarkeit zu verbessern. Redis verwendet eine Ereignisschleife mit einer Thread, um Verbindungen und Befehle zu verarbeiten, um die Datenatomizität und Konsistenz zu gewährleisten. Redis legt die Ablaufzeit für den Schlüssel fest und verwendet den faulen Löschmechanismus, um den Ablaufschlüssel zu löschen.

Der beste Weg, um Redis -Quellcode zu verstehen, besteht darin, Schritt für Schritt zu gehen: Machen Sie sich mit den Grundlagen von Redis vertraut. Wählen Sie ein bestimmtes Modul oder eine bestimmte Funktion als Ausgangspunkt. Beginnen Sie mit dem Einstiegspunkt des Moduls oder der Funktion und sehen Sie sich die Codezeile nach Zeile an. Zeigen Sie den Code über die Funktionsaufrufkette an. Kennen Sie die von Redis verwendeten Datenstrukturen. Identifizieren Sie den von Redis verwendeten Algorithmus.

Redis unterstützt als Messing Middleware Modelle für Produktionsverbrauch, kann Nachrichten bestehen und eine zuverlässige Lieferung sicherstellen. Die Verwendung von Redis als Message Middleware ermöglicht eine geringe Latenz, zuverlässige und skalierbare Nachrichten.
