redis我记不住的那些命令(八)
创始人
2024-04-19 12:05:21
0

背景:我记不住那么多命令,又是Linux命令,又是Git命令,又是kubernetes的命令,又是maven命令,又是redis命令。所谓好记性不如烂笔头,记下来吧。

一、发布publish/订阅subscribe

发布/订阅的实现过于简单,因为它只是分发消息,无法记录历史消息,例如网络断开、Redis宕机等消息就会丢弃,而在Redis5.0 新增了一个Redis Stream的数据结构,主要用于消息队列(MQ,message queue),它提供了消息的持久化和主备复制功能。

1.  publish:向给定频道发送消息

2.  subscribe:订阅给定的一个或多个频道

3.  unsubscribe:退订给定的一个或多个频道,如果执行时没有给定任何频道,则退订所有频道

4.  psubscribe:订阅给定的与pattern相匹配的频道

5.  punsubscribe:退订给定的与pattern相匹配的频道,如果执行时没有给定任何频道,则退订所有频道

# 1.  subscribe:订阅给定的一个或多个频道
127.0.0.1:6379> subscribe mychannel
subscribe
mychannel
1# 2.  publish:向给定频道发送消息
# 再另外启动一个shell连接redis并执行下列命令
127.0.0.1:6379> publish mychannel "hello,world"
1# 返回前一个shell窗口,则显示
127.0.0.1:6379> subscribe mychannel
subscribe
mychannel
1
message
mychannel
hello,world# 3.  unsubscribe:退订给定的一个或多个频道,如果执行时没有给定任何频道,则退订所有频道
127.0.0.1:6379> unsubscribe mychannel# 4.  psubscribe:订阅给定的与pattern相匹配的频道
略# 5.  punsubscribe:退订给定的与pattern相匹配的频道,如果执行时没有给定任何频道,则退订所有频道
略

二、Hyperloglog

1. pfadd : 添加元素到hyperloglog中

2. pfcount:获取hyperloglog中的基数的估算值

3. pfmerge:将多个hyperloglog合并为一个hyperloglog

pf代表是这个数据结构的发明人Philippe Flajolet

hyperloglog可以用于统计一个网站的pv(unique view),也可以使用set来进行统计,这两个数据结构都有自动去重的功能。hyperloglog所占空间较小只需12KB内存即可,实现原理这里不详细展开。

如果使用set,当一个请求来了后sadd将用户id或ip地址放进去,并由scard统计数量即可,但是当一个页面有几千万的uv,这个很大的set集合就比较浪费空间。所以就引出了hyperloglog,它提供不精确的去重统计方案,标准误差在0.81%,可以满足上述UV统计。

用法与set相似,pfadd类似于sadd,pfcount类似于scard。

# 1. pfadd : 添加元素到hyperloglog中
127.0.0.1:6379> pfadd myUV xiaoming
1
127.0.0.1:6379> pfadd myUV lihua
1
127.0.0.1:6379> pfadd myUV zhanghong
1127.0.0.1:6379> pfadd youUV xiaoming
1
127.0.0.1:6379> pfadd youUV lihua
1
127.0.0.1:6379> pfadd youUV liuwei
1
# 2. pfcount:获取hyperloglog中的基数的估算值
127.0.0.1:6379> pfcount myUV
3
127.0.0.1:6379> pfcount youUV
3# 3. pfmerge:将多个hyperloglog合并为一个hyperloglog
127.0.0.1:6379> pfmerge threeUV myUV youUV
OK
127.0.0.1:6379> pfcount threeUV
4

相关内容

热门资讯

桂林回应虐猫考生事件:当事人不... 记者从广西平乐县人力资源和社会保障局了解,近日,苏某某参加桂林市2025年度事业单位公开考试招聘,通...
马兴瑞同志不再兼任新疆维吾尔自... (转自:储能与电力市场)人民日报的消息显示,马兴瑞同志不再兼任新疆维吾尔自治区党委书记、常委、委员职...
重磅发布会,周四上午10时举行... 7月3日(星期四)上午10时,国务院新闻办公室将举行新闻发布会,请文化和旅游部副部长卢映川、国家广电...
“大转变”!A股IPO受理暴增... 格隆汇7月1日|A股IPO市场迎来了“大转变”!6月,A股市场IPO迎来了一波受理高峰。6月30日,...
新民教育观察|孩子爱打游戏,他... 转自:上观新闻作为今年暑假沪上首个“可看可玩可学”项目——2025上海教育装备博览会,6月29日至7...
机构:6月百城新建住宅环比上涨... 转自:北京商报北京商报讯(记者 王寅浩 李晗)7月1日,中指研究院发布《中国房地产指数系统百城价格指...
通车!新疆最美自驾公路+1 转自:中国妇女网6月30日,车辆行驶在阿禾公路上。6月30日,新疆阿禾公路正式通车。阿禾公路始于阿勒...
聚仁新材IPO:员工专科及以下... Hehson财经上市公司研究院|财报鹰眼预警湖南聚仁新材料股份公司(以下简称“聚仁新材”)拟计划在北...
抖音电商:依据既定规则开放带货...   Hehson科技讯 7月1日下午消息,抖音电商发布公告称,经外部举报反馈,有不法分子声称可对外售...
应勇会见新加坡律政部长兼内政部... 7月1日,中华人民共和国首席大检察官、最高人民检察院检察长应勇在京会见新加坡律政部长兼内政部第二部长...