Redis从入门到高可用分布式实践4其他功能

第4章 瑞士军刀Redis其他功能
除了5种数据结构外,Redis还提供了诸如慢查询、Pipeline、Bitmap、HyperLogLog、发布订阅、GEO等附加功能,在这些功能的帮助下,Redis的应用场景更加丰富。
4-1 课程目录
4-2 慢查询
4-3 pipeline
4-4 发布订阅
4-5 bitmap
4-6 hyperloglog
4-7 geo

4-1 课程目录

慢查询
pipeline
发布订阅
Bitmap
HyperLogLog
GEO

4-2 慢查询

生命周期 两个配置 三个命令 运维经验

生命周期

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

两个配置-showlog-max-len

Redis从入门到高可用分布式实践4其他功能

两个配置-showlog-log-slower-than

Redis从入门到高可用分布式实践4其他功能

配置方法

Redis从入门到高可用分布式实践4其他功能

慢查询命令

Redis从入门到高可用分布式实践4其他功能

运维经验

Redis从入门到高可用分布式实践4其他功能

4-3 pipeline

流水线功能
什么是流水线 客户端实现 与原生操作对比 使用建议

1次网络通信模型

Redis从入门到高可用分布式实践4其他功能
多个命令

批量网络命令通信模型

Redis从入门到高可用分布式实践4其他功能
命令时间从超快?
网络时间会不确定,可能会很慢。
Redis从入门到高可用分布式实践4其他功能

什么是流水线

Redis从入门到高可用分布式实践4其他功能

流水线作用

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

pipeline-Jedis实现

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
hmset只能针对一个key进行,而这里是执行了1万个不同的key
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
每次发送100个命令,做100次发送
Redis从入门到高可用分布式实践4其他功能

与远程M操作

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

使用建议

1.注意每次pipeline携带数据量
2.pipeline每次只能作用在一个Redis节点上
3.M操作和pipeline的区别

4-4 发布订阅

角色 模型 API 发布订阅与消息队列

角色

:发布者(publisher)、订阅者(subscriber)、频道(channel) 发布者发布消息到频道上,订阅者订阅频道就会收到消息

模型


Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
每个订阅者可以订阅多个频道
一旦发布者发送消息后,所有的订阅者都能收到消息

API

publish
unsubscribe
subscribe
其他

publish

发布命令
Redis从入门到高可用分布式实践4其他功能

unsubscribe

取消阿订阅
Redis从入门到高可用分布式实践4其他功能

subscribe

订阅
Redis从入门到高可用分布式实践4其他功能

其他

按照模式订阅,订阅以V开头的
Redis从入门到高可用分布式实践4其他功能

消息队列

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
抢的模式,发布者发布一条,只有一个订阅者能够收到

阻塞,推拉模型

全部清除,三个人抢红包,只有一个人抢到就完了

发布订阅总结

Redis从入门到高可用分布式实践4其他功能

4-5 bitmap

位图 相关命令 独立用户统计

位图

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

setbit

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

geybit

Redis从入门到高可用分布式实践4其他功能

bitcount

Redis从入门到高可用分布式实践4其他功能

bitop

Redis从入门到高可用分布式实践4其他功能

bitops

Redis从入门到高可用分布式实践4其他功能

独立用户统计

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

Redis从入门到高可用分布式实践4其他功能

使用经验

Redis从入门到高可用分布式实践4其他功能

4-6 hyperloglog

新的数据结构? 三个命令 内存消耗 使用经验

hyperloglog

Redis从入门到高可用分布式实践4其他功能

三个命令

Redis从入门到高可用分布式实践4其他功能

例子

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

内存消耗(百万独立用户)

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

使用经验

Redis从入门到高可用分布式实践4其他功能
比如说,都有哪些独立用户?做不到

4-7 geo

geo是什么 5个城市经纬度 相关命令 相关说明
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

应用场景

指定范围内的用户、好友、餐馆、酒店

5个城市经纬度

Redis从入门到高可用分布式实践4其他功能

geoadd

Redis从入门到高可用分布式实践4其他功能

geopos

Redis从入门到高可用分布式实践4其他功能

geodist

Redis从入门到高可用分布式实践4其他功能

georadius

Redis从入门到高可用分布式实践4其他功能
Redis从入门到高可用分布式实践4其他功能

相关说明

Redis从入门到高可用分布式实践4其他功能