Redis 全中文总结

一个C编写的 Key-Value 存储系统,和 Memcached 类似, 支持存储的 value 类型相对更多,性能更好

key 键

del/exists/keys/randomkey/type/rename renamenx 键 不存在的新键名 dump 需序列化键 restore 键 有效秒0不设 需序列化值 可选替换REPLACE

expire 键 有效秒 expireat 键 unix时间戳 ttl 键 (返回剩余秒) pexpire 键 有效毫秒 pexpireat 键 unix毫秒时间戳 pttl 键 (返回剩余毫秒) persist 键 (持久,移除有效秒)

migrate (迁移) IP 端口 键 库号 超时 可选复制COPY 可选替换REPLACE move 键 库号 object sort 键 [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC | DESC] 默认ASC从小到大 [ALPHA] 配置字符串默认数字 [STORE 保存目标键]

scan 游标 (返回游标和迭代的多个元素) 可选 [MATCH pattern] 可选 [COUNT count]

string

set/setnx 键 值 (not exist 如果不存在) setex 键 有效秒 值 setrange 键 开始替换位置 值 mset/msetnx 键 值 键 值 ... get/mget/getset(设置返回旧值) 键 getrange 键 左位置 右位置 (range 区间,负表示右边开始,超出按最大) incr 自增并返回int 不存在时原值0 incrby 自增指定数值 decr/decrby/append/strlen

hashes 哈希表

hset/hsetnx/hmset/hget/hmget (hmset 键 hash键 值 hash键 值 ...) hincrby/hexists/hlen/hdel/hkeys/hvals hgetall 全部的 filed 及 value

lists 链表

压入弹出: lpush/rpush/lpop/rpop/rpoplpush 增删改查: linsert 键 before 前一个值 值 lrem 键 删除位置,重复时从左开始删 lset 键 位置(0开始负右边开始) 值 lindex 键 位置 llen ltrim 键 截取开始位置 结束位置

sets 不重复集合

sadd/srem smembers 返回键中所有元素 spop 键中随机返回并删除该元素 srandmember 键中随机返回 sdiff 被减集 减集 sdiffstore 存集 被减集 减集 sinter/sinterstore (交集) sunion/sunionstore (并集) smove 出集 入集 元素 scard 元素个数 sismember 键 测试存在成员

sortedsets 有序集合

zadd 键 score分 值(以最后一次为准) zrem/zremrangebyrank/zremrangebyscore zrange 键 小开始 大结束 withscores zrangebyscore 键 开始 结束 withscores zrevrange 键 大开始 小结束 withscores zincrby (存在则score增加否则添加元素) zrank 键 元素score从小到大排名 zrevrank 键 元素score从大到小排名 zcount 键 开始 结束 zcard 元素个数 zscore 键 需返回分值的元素

hyperloglog 基数(不重复元素)

pfadd 键 对象 对象 ... (没对象时创建空基数) pfcount 键 键 ... (近似基数) pfmerge 模板键 源键 源键 ...

geo 地理位置

geoadd geopos geodist georadius georadiusbymember geohash

pub/sub(发布/订阅)

subscribe 订阅频道1 频道2 ... unsubscribe 退订频道1 频道2 ... punsubscribe 退订模式1 模式2 ...

publish 发布频道 消息 pubsub CHANNELS [pattern] (列出活跃频道) PUBSUB NUMSUB [channel-1 ... channel-N] (订阅数量) PUBSUB NUMPAT (订阅模式数量)

Transaction(事务)

multi 开启事务(多语句) watch 键 (乐观锁,如果被更新了就不修改) exec 提交事务/乐观锁(崩溃不回滚) discard 回滚事务

config get * 获取配置 monitor (显示操作)

script(脚本)

eval evalsha script exists script flush script kill script load

Connection(连接)

select 选择库号 程序 -a 设置连接口令 requirepass 设置连接口令 auth 验证连接口令 ping (测试连接) quit (退出连接) echo 显示消息

server(服务器)

dbsize/info/time/shutdown client getname/client setname/client list/client kill

config get/config set config resetstat config rewrite 记录到redis.conf文件

debug object 需返回信息的键 debug segfault 让其崩溃 flushall 删除所有库所有key flushdb 删除当前库所有key

monitor (实时显示接收到的命令) slaveof 主服IP地址 6379 (伺服) slowlog sync psync (继续同步2.8以上)

Redis 持久化

Snapshotting(快照,默认) 默认文件名:dump.rdb save 秒 多少个键被修改时快照 save (不推荐,因为会阻塞) bgsave (后台异步保存当前数据库) lastsave (最后成功保存时间)

Append-only file(添加,缩写 aof) 默认文件名:appendonly.aof appendonly yes // 启用 # appendfsync always // 立即,最慢 # appendfsync everysec // 每秒,默认 # appendfsync no bgrewriteaof (重刷)

Jedis

JRedis jredis = new JRedisClient("localhost", 6379);

批量发送请求: ConnectionSpec spec = DefaultConnectionSpec .newSpec("localhost", 6379, 0, null); JRedis jredis = new JRedisPipelineService(spec);

参考资料: Redis实战《红丸出品》.PDF Redis 命令参考: http://redisdoc.com/index.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏浪淘沙

Hive学习

         Hive是基于Hadoop的一个数据仓库工具(离线),可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。

792
来自专栏蓝天

通过小代码体验程序中BSS段和DATA段的差异

BSS(Block Started by Symbol)用来存储未初始化的全局变量,值为0的通常会被编译器认为未初始化,属于静态内存分配区,不会占用程序文件空...

571
来自专栏Golang语言社区

Golang 持久化

持久化 程序可以定义为算法+数据。算法是我们的代码逻辑,代码逻辑处理数据。数据的存在形式并不单一,可以存在数据库,文件。无论存在什么地方,处理数据的时候都需要把...

4009
来自专栏崔庆才的专栏

ScrapyRedis源码解析

ScrapyRedis 这个库已经为我们提供了 Scrapy 分布式的队列、调度器、去重等功能,其 GitHub 地址为:https://github.com/...

5710
来自专栏别先生

一脸懵逼学习Storm的搭建--(一个开源的分布式实时计算系统)

Storm的官方网址:http://storm.apache.org/index.html 1:集群部署的基本流程(基本套路): 集群部署的流程:下载安...

3426
来自专栏邹立巍的专栏

Linux 的进程间通信:文件和文件锁

我们首先引入文件进行 IPC ,试图先使用文件进行通信引入一个竞争条件的概念,然后使用文件锁解决这个问题,从而先从文件的角度来管中窥豹的看一下后续相关 IPC ...

5360
来自专栏逆向技术

win32程序之窗口程序,以及消息机制

  通过上一讲.我们了解了窗口其实是绘制出来的.而且是不断绘制的过程. 所以窗口的本质是绘制. 但是我们现在看到的窗口程序.都可以点击关闭按钮. 使用鼠标点击会...

642
来自专栏积累沉淀

strom之Worker、executor、task详解

Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作: 1. Worker(进程) 2. Executor(...

1896
来自专栏DOTNET

【翻译】MongoDB指南/CRUD操作(二)

【原文地址】https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,S...

2948
来自专栏数据结构与算法

HDU6315 Naive Operations(线段树 复杂度分析)

设\(d_i\)表示\(i\)号节点还需要加\(d_i\)次才能产生\(1\)的贡献

554

扫码关注云+社区