redis 发布订阅、geo、bitmap、hyperloglog
1、发布订阅
简介
- 发布订阅类似于广播功能。redis发布订阅包括 发布者、订阅者、Channel
- 命令
命令 | 作用 | 时间复杂度 |
---|---|---|
subscribe channel | 订阅一个频道 | O(n) |
unsubscribe channel ... | 退订一个/多个频道 | O(n) |
publish channel msg | 将信息发送到指定的频道 | O(n+m),n 是频道 channel 的订阅者数量, M 是使用模式订阅(subscribed patterns)的客户端的数量 |
pubsub CHANNELS | 查看订阅与发布系统状态(多种子模式) | O(n) |
psubscribe | 订阅多个频道 | O(n) |
unsubscribe | 退订多个频道 | O(n) |
2、geo
简介
- geo是地理空间位置。redis支持将geo信息存储到有序集合中,再通过geohash算法进行填充
- 命令
命令 | 作用 |
---|---|
geoadd key latitude longitude member | 添加成员位置(纬度、经度、名称)到key中 |
geopos key member ... | 获取成员geo坐标 |
geodist key member1 member2 | 计算成员位置间距离 |
georadius | 基于经纬度坐标范围查询 |
georadiusbymember | 基于成员位置范围查询 |
geohash | 计算经纬度hash |
3、bitmap
简介
- bitmap是一串连续的2进制数字(0或1),每一位所在的位置为偏移(offset),在bitmap上可执行AND, OR, XOR以及其它位操作
- 命令
命令 | 作用 | 时间复杂度 |
---|---|---|
setbit key offset val | 给指定key的值的第offset赋值val | O(1) |
getbit key offset | 获取指定key的第offset位 | O(1) |
bitcount key start end | 返回指定key中[start,end]中为1的数量 | O(n) |
bitop operation destkey key | 对不同的二进制存储数据进行位运算(AND、OR、NOT、XOR) | O(n) |
4、hyperloglog
简介
- hyperloglog可用极小空间完成独立数统计
- 命令
命令 | 作用 |
---|---|
pfadd key element ... | 将所有元素添加到key中 |
pfcount key | 统计key的估算值(不精确) |
pgmerge new_key key1 key2 ... | 合并key至新key |
PS: 更多文章请关注微信公众号:浮话
转载于:https://www.cnblogs.com/jie-hu/p/10940649.html
redis 发布订阅、geo、bitmap、hyperloglog相关推荐
- 【Java从0到架构师】Redis 进阶 - pipline、发布订阅、Bitmap、HyperLogLog、GEO
Redis 原理与实战 Jedis 的基本使用 Redis 数据淘汰策略 Redis 进阶拓展 pipline - 命令批处理,减少大量命令的网络开销,提高操作性能 发布订阅 - subscribe ...
- 5.Redis 发布订阅
转自:http://www.runoob.com/redis/redis-tutorial.html Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub ...
- python redis订阅_Python -- Redis 发布订阅
一.前言 Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. Redis 客户端可以订阅任意数量的频道. 下图展示了频道 channel1 ...
- google的api key调用次数是多少_Sprint Boot如何基于Redis发布订阅实现异步消息系统的同步调用?...
前言 在很多互联网应用系统中,请求处理异步化是提升系统性能一种常用的手段,而基于消息系统的异步处理由于具备高可靠性.高吞吐量的特点,因而在并发请求量比较高的互联网系统中被广泛应用.与此同时,这种方案也 ...
- 使用Spring Redis发布/订阅
继续发现功能强大的Redis功能集,值得一提的是对发布/订阅消息的开箱即用支持. 发布/订阅消息传递是许多软件体系结构的重要组成部分. 某些软件系统要求消息传递解决方案提供高性能,可伸缩性,队列持久性 ...
- Redis发布订阅模式
使用银行卡消费的时候,银行往往会通过微信.短信或邮件通知用户这笔交易的信息,这便是一种发布订阅模式,这里的发布是交易信息的发布,订阅则是各个渠道.这在实际工作中十分常用,Redis 支持这样的一个模式 ...
- 上下文管理、redis发布订阅、RabbitMQ发布订阅、SQLAlchemy
一.上下文管理 import contextlib @contextlib.contextmanager def work_state(state_list,worker_thread):state_ ...
- Redis 发布订阅,小功能大用处,真没那么废材!
假设我们有这么一个业务场景,在网站下单支付以后,需要通知库存服务进行发货处理. 上面业务实现不难,我们只要让库存服务提供给相关的给口,下单支付之后只要调用库存服务即可. 后面如果又有新的业务,比如说积 ...
- Redis发布订阅机制
1. 什么是Redis Redis是一个开源的内存数据库,它以键值对的形式存储数据.由于数据存储在内存中,因此Redis的速度很快,但是每次重启Redis服务时,其中的数据也会丢失,因此,Redis也 ...
最新文章
- Catel(翻译)-为什么选择Catel
- 再谈Windows Service - 一个简单的自我例子和部署
- iPhone X的刘海基本上就是一台Kinect
- stm32跑python-STM32F4系列使用MicroPython开发
- 朱宁:70%散户跑不赢大盘?因为机构利用了他们的错误
- Elasticsearch笔记(七):聚合查询
- JMeter扩展JMeter插件获取更多监听器
- 使用PerfView监测.NET程序性能(四):折叠,过滤和时间范围选择
- 【UIKit】UITableView.06
- c语言学生成绩管理系统课设作业,C语言课程设计——学生成绩管理系统
- 2440 6.0BSP 移植过程之显示驱动篇
- Bailian3238 生日相同【稳定排序】
- 松下服务器A5代码70维修,松下伺服电机A5系列故障代码.pdf
- iOS方形图片裁剪成圆形
- 软件测试技术课后习题:第4章白盒测试-广东高等教育出版社,主编杨胜利
- 微机原理课程设计-模拟十字路口交通信号灯
- JAVA删除pdf空白页_【Spire.PDF教程】添加或删除 PDF 页面,调整页面顺序-word删除空白页...
- Crazy Engine 3.0(又名盘古引擎)的技术特性
- Helix --未完待续
- 数字示波器中单位:Kpts, PPM, Sa/s, wfs