薯羞 发表于 2025-6-11 18:35:54

Redis组件介绍(四)

写在前面

今天继续学习后面的知识。
Redis 操作命令

操作 List 相关 API


[*]LPUSH

[*]说明: 将某个值加入到一个 key 列表的头部。当列表不存在时会创建。
[*]语法: LPUSH key value
[*]返回值: 成功返回列表的元素个数,失败返回 0。

[*]LPUSHX

[*]说明: 与 LPUSH 类似,但必须保证 key 存在。
[*]语法: LPUSHX key value
[*]返回值: 成功返回列表的元素个数,失败返回 0。

[*]RPUSH

[*]说明: 将某个值加入到一个 key 列表的末尾。
[*]语法: RPUSH key value
[*]返回值: 成功返回列表的元素个数,失败返回 0。

[*]RPUSHX

[*]说明: 与 RPUSH 类似,但必须保证 key 存在。
[*]语法: RPUSHX key value
[*]返回值: 成功返回列表的元素个数,失败返回 0。

[*]LPOP

[*]说明: 返回并移除列表左边的第一个元素。
[*]语法: LPOP key
[*]返回值: 被删除的元素。

[*]RPOP

[*]说明: 返回并移除列表右边的第一个元素。
[*]语法: RPOP key
[*]返回值: 被删除的元素。

[*]LRANGE

[*]说明: 获取指定下标区间内的元素。
[*]语法: LRANGE key start stop
[*]示例: LRANGE list 0 -1

[*]LLEN

[*]说明: 获取列表的元素个数。
[*]语法: LLEN key

[*]LSET

[*]说明: 设置指定索引的值,相当于修改这个位置的值。
[*]语法: LSET key index value

[*]LINDEX

[*]说明: 获取指定索引位置的元素。
[*]语法: LINDEX key index

[*]LREM

[*]说明: 删除列表中重复的元素,设置删几个,就会删几个。
[*]语法: LREM key count value
[*]说明: count 为删除的数量。

[*]LTRIM

[*]说明: 保留列表中特定区间内的元素,其他元素删除。
[*]语法: LTRIM key start stop

[*]LINSERT

[*]说明: 在某个元素之前或之后插入新元素。
[*]语法: LINSERT key before|after pivot value

操作 Set 相关 API


[*]SADD

[*]说明: 为集合添加元素。
[*]语法: SADD key member
[*]返回值: 添加了的元素个数。

[*]SMEMBERS

[*]说明: 显示集合中的所有元素(无序)。
[*]语法: SMEMBERS key

[*]SCARD

[*]说明: 返回集合中元素的个数。
[*]语法: SCARD key

[*]SPOP

[*]说明: 随机返回并删除集合中的一个元素。
[*]语法: SPOP key

[*]SMOVE

[*]说明: 从一个集合中移动元素到另一个集合,必须是同种类型。
[*]语法: SMOVE source destination member

[*]SREM

[*]说明: 从集合中删除一个元素。
[*]语法: SREM key member
[*]返回值: 删除的元素个数。

[*]SISMEMBER

[*]说明: 判断集合中是否含有某个元素。
[*]语法: SISMEMBER key member
[*]返回值: 存在返回 1,不存在返回 0。

[*]SRANDMEMBER

[*]说明: 随机返回集合中的元素,可以指定返回的个数。
[*]语法: SRANDMEMBER key

[*]SDIFF

[*]说明: 去掉第一个集合中其它集合含有的相同元素。
[*]语法: SDIFF key

[*]SINTER

[*]说明: 求集合的交集。
[*]语法: SINTER key

[*]SUNION

[*]说明: 求集合的并集。
[*]语法: SUNION key

操作 ZSet 相关 API


[*]ZADD

[*]说明: 添加有序集合元素。
[*]语法: ZADD key score member
[*]示例: ZADD zset 2 xiaohu 3 xiaohu2

[*]ZCARD

[*]说明: 返回有序集合的元素个数。
[*]语法: ZCARD key

[*]ZRANGE

[*]说明: 返回有序集合中指定范围的元素(升序)。
[*]语法: ZRANGE key start stop

[*]ZREVRANGE

[*]说明: 返回有序集合中指定范围的元素(降序)。
[*]语法: ZREVRANGE key start stop

[*]ZRANGEBYSCORE

[*]说明: 按照分数查找范围内的元素。
[*]语法: ZRANGEBYSCORE key min max
[*]示例: ZRANGEBYSCORE zset 0 20 WITHSCORES LIMIT 0 2

[*]ZRANK

[*]说明: 返回指定成员的排名(升序)。
[*]语法: ZRANK key member

[*]ZREVRANK

[*]说明: 返回指定成员的排名(降序)。
[*]语法: ZREVRANK key member

[*]ZSCORE

[*]说明: 显示某个元素的分数。
[*]语法: ZSCORE key member

[*]ZREM

[*]说明: 移除指定成员。
[*]语法: ZREM key member

[*]ZINCRBY

[*]说明: 给指定元素增加分数。
[*]语法: ZINCRBY key increment member
[*]说明: 如果需要减分,increment 可以是负数。

操作 Hash 相关 API


[*]HSET

[*]说明: 设置一个或多个 key/value 对。
[*]语法: HSET key field value

[*]HMSET

[*]说明: 设置多个 key/value 对。
[*]语法: HMSET key field value

[*]HSETNX

[*]说明: 设置一个不存在的 key 的值。
[*]语法: HSETNX key field value
[*]返回值: 设置成功返回 1,失败返回 0。

[*]HGET

[*]说明: 获取指定 key 对应的值。
[*]语法: HGET key field

[*]HGETALL

[*]说明: 获取所有 key/value 对。
[*]语法: HGETALL key

[*]HMGET

[*]说明: 获取多个 key 对应的值。
[*]语法: HMGET key field

[*]HDEL

[*]说明: 删除指定的 key/value 对。
[*]语法: HDEL key field
[*]返回值: 删除成功的个数。

[*]HEXISTS

[*]说明: 判断某个 key 是否存在。
[*]语法: HEXISTS key field
[*]返回值: 存在返回 1,不存在返回 0。

[*]HKEYS

[*]说明: 获取所有的 key。
[*]语法: HKEYS key

[*]HVALS

[*]说明: 获取所有的 value。
[*]语法: HVALS key

[*]HINCRBY

[*]说明: 为指定 key 对应的值进行加法运算(只能针对数值做运算)
[*]语法: HINCRBY key field increment

[*]HINCRBYFLOAT

[*]说明: 为指定 key 对应的值增加浮点数。
[*]语法: HINCRBYFLOAT key field increment

Redis 主从复制

主从复制架构

主从复制主要用于数据冗余备份,从节点用于数据同步,但无法自动处理主节点故障。
主从复制架构图


搭建主从复制


[*]准备工作

[*]创建三个目录:master, node1, node2。
[*]拷贝 redis.conf 配置文件到各目录:cp redis-7.0.0/redis.conf ./master/
cp redis-7.0.0/redis.conf ./node1/
cp redis-7.0.0/redis.conf ./node2/

[*]配置文件修改

[*]masterport 6379
protected-mode no
[*]node1port 6380
protected-mode no
replicaof <masterip> <masterport># 例如:replicaof 192.168.40.110 6379
[*]node2port 6381
protected-mode no
replicaof <masterip> <masterport># 例如:replicaof 192.168.40.110 6379

[*]启动 Redis 实例
cd /usr/local/soft/bigdata/redis-install
redis-server ./master/redis.conf
redis-server ./node1/redis.conf
redis-server ./node2/redis.conf

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: Redis组件介绍(四)