一、常用命令1、String类型(1)set key value
nx:如果key不存在则建立
xx:如果key存在则修改其值(2)get key:取值(3)mset key1 value1 key2 value2 一次设置多个值(4)mget key1 key2 :一次获取多个值(5)getrange key start stop:获取字符串中[start, stop]范围的值
对于字符串的下标,左数从0开始,右数从-1开始
注意:当start>length,则返回空字符串
当stop>=length,则截...
2.hsetnx
设置hash field为指定值,如果key不存在,则先创建。如果存在返回0.redis 127.0.0.1:6379> hsetnx user:001 name wangwu
(integer) 0
redis 127.0.0.1:6379> hget user:001 name
"lisi"
3,hmset
同时设置 hash的多个fieldredis 127.0.0.1:6379> hmset myhash field1 hello field2 world
OK
redis 127.0.0.1:6379> hget myhash field1
"hello"
redis 127.0.0.1:6379> hget myhash field2
"world"
redis 127.0.0.1:6...
.0.1:6379> lpush mylist1 world
(integer) 1
redis 127.0.0.1:6379> lpush mylist1 hello
(integer) 2
redis 127.0.0.1:6379> lrange mylist1 0 -1
1) "hello"
2) "world"
2. rpush
在key对应list的尾部添加字符串。redis 127.0.0.1:6379> rpush mylist2 bbb(integer) 1redis 127.0.0.1:6379> rpush mylist2 aaa(integer) 2redis 127.0.0.1:6379> lrange mylist2 0 -11) "bbb"2) "aaa"
3. linsert
在key对应的list的特定...
key valuenx:如果key不存在则建立xx:如果key存在则修改其值(2)get key:取值(3)mset key1 value1 key2 value2 一次设置多个值(4)mget key1 key2 :一次获取多个值(5)getrange key start stop:获取字符串中[start, stop]范围的值对于字符串的下标,左数从0开始,右数从-1开始注意:当start>length,则返回空字符串当stop>=length,则截取至字符串尾如果start所处位置在stop右边,则返回空字符串(6)getset key nrevalue...
一、常用命令1、String类型(1)set key value
nx:如果key不存在则建立
xx:如果key存在则修改其值(2)get key:取值(3)mset key1 value1 key2 value2 一次设置多个值(4)mget key1 key2 :一次获取多个值(5)getrange key start stop:获取字符串中[start, stop]范围的值
对于字符串的下标,左数从0开始,右数从-1开始
注意:当start>length,则返回空字符串
当stop>=length,则截...
.0.1 -p 6379
redis 127.0.0.1:6379> set foo test
OK
redis 127.0.0.1:6379> get foo
"test"
2.setnx设置key对应的值为string类型的value,如果key已经存在,返回0,nx是not exist的意思。命令简单的理解为: 设置一个key,如果可以key对应的值不存在才更新值。redis 127.0.0.1:6379> setnx foo1 aaa(integer) 1redis 127.0.0.1:6379> get foo1"aaa"redis 127.0.0.1:6379> setnx foo1 bbb(integer) 0
3. setex设置key对应的值为s...
redis是一个存储系统。它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。《麦子学院深入浅出 redis 视频教程》带你由浅至深的了解这个系统。redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、...
学习地址:?id=241 简介:Redis是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。最佳应用场景:适用学习地址:?id=241简介:Redis是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,香港虚拟主机,在部 分场合可以对关系数据库起...
本篇博客会简单的介绍Redis的Sentinel相关的原理,同时也会在最后的文章给出硬核的实战教程,让你在了解原理之后,能够实际上手的体验整个过程。之前的文章聊到了Redis的主从复制,聊到了其相关的原理和缺点,具体的建议可以看看我之前写的文章Redis的主从复制。
总的来说,为了满足Redis在真正复杂的生产环境的高可用,仅仅是用主从复制是明显不够的。例如,当master节点宕机了之后,进行主从切换的时候,我们需要人工的去做failo...
1 数据结构与对象
1.1 SDS(simple dynamic string)redis使用SDS表示字符串、缓冲区(AOF缓冲区)以及客户端状态中的输入缓冲区。/** 保存字符串对象的结构*/struct sdshdr {// buf 中已占用空间的长度int len;// buf 中剩余可用空间的长度int free;// 数据空间char buf[];};free属性的值为0,表示这个SDS没有分配任何未使用空间
len属性的值为5,表示这个SDS保存了一个5字节长的字符串
buf属性是一个char类型的数组,最后以’\0’...
前言:
这篇文章主要介绍了Redis集群的相关,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值。注意!要求使用的都是redis3.0以上的版本,因为3.0以上增加了redis集群的功能。1.redis介绍
1.1什么是redis
Redis是用C语言开发的一个开源的高性能键值对(key-value)的非关系型数据库。通过多种键值数据类型来适应不同场景下的存储需求,目前支持的键值数据类型有:字符串,散列,列表,集合,有序集合
2...
Redis 数据结构Redis 常用的数据类型主要有以下五种:StringHashListSetSorted setRedis 内部使用一个 redisObject 对象来表示所有的 key 和 value。String 在 redis 内部存储默认就是一个字符串,被 redisObject 所引用,当遇到 incr,decr 等操作时会转成数值型进行计算,此时 redisObject 的 encoding 字段为int。list 的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销,Redis 内部的...