辅助功能
慢查询
通过慢查询可以定位慢操作
slowlog-log-slower-than和slowlog-max-len配置慢查询的预设阈值。
慢查询日志存放在内存中,可以通过slowlog获取慢查询日志
slowlog get [n]
redis shell
redis提供了redis-cli,redis-server,redis-benchmark等shell工具。
redis-benchmark可以为Redis做基准性能测试
pipeline
将多个命令合并成一个进行操作,节省了多次网络传输的问题
事务
将一组命令放到multi和exec命令中,形成一个事务
lua脚本
lua脚本在redis中是原子执行的
lua可以帮助开发和运维人员开发定制的命令,并将命令常驻在内存中,实现复用
lua脚本可以将多条命令一次性打包,有效减少网络开销
bitmaps
按位操作的字符串。比如用bitmaps存储网站的活跃用户,每个用户占一位,则需要的内存会减少8*8倍。当然,如果活跃用户太小的场景则不适合
hyperloglog
一种新的基数算法,利用极小的内存空间完成独立总数的统计.数据集可以是IP,Email,ID等。但统计时存在一定的误差.
发布订阅
简单的消息队列实现
GEO
支持地理位置的存储和计算.Redis3.2实现的功能.
复制
将主服务器的数据复制到从服务器
与客户端的交互
Redis与客户端的通讯协议基于tcp,使用RESP序列化协议.
客户端API
持久化
RDB
将当前进程数据生成快照保存到硬盘,可手动除非或自动触发
AOF
以日志模式记录每次的写操作,目前主流的持久化方式