关于 pubsub numpat

来源:4-4 发布订阅

shixinpeng3335052

2017-11-25

# client-1 订阅 news.* 和 discount.* 两个模式

client-1> PSUBSCRIBE news.* discount.*
Reading messages... (press Ctrl-C to quit)
1) "psubscribe"
2) "news.*"
3) (integer) 1
1) "psubscribe"
2) "discount.*"
3) (integer) 2

# client-2 订阅 tweet.* 一个模式

client-2> PSUBSCRIBE tweet.*
Reading messages... (press Ctrl-C to quit)
1) "psubscribe"
2) "tweet.*"
3) (integer) 1

# client-3 返回当前订阅模式的数量为 3

client-3> PUBSUB NUMPAT
(integer) 3

# 注意,当有多个客户端订阅相同的模式时,相同的订阅也被计算在 PUBSUB NUMPAT 之内
# 比如说,再新建一个客户端 client-4 ,让它也订阅 news.* 频道

client-4> PSUBSCRIBE news.*
Reading messages... (press Ctrl-C to quit)
1) "psubscribe"
2) "news.*"
3) (integer) 1

# 这时再计算被订阅模式的数量,就会得到数量为 4

client-3> PUBSUB NUMPAT
(integer) 4

老师,订阅模式的数量是指一个渠道么? 还有为啥别人订阅了相同的模式为啥 其他客户端也会+1,这个命令是个发布者调用还是给订阅者调用呢?或者说是满足哪个端的某种需求呢?

写回答

1回答

carlosfu

2017-11-29

1. 订阅模式的数量是指一个渠道么?

不是,是所有模式渠道

2. 还有为啥别人订阅了相同的模式为啥 其他客户端也会+1

pubsub numpat不是统计的客户端数量,而是所有模式被订阅的次数。

3.这个命令是个发布者调用还是给订阅者调用呢?

客户端都可以调用

0
0

一站式学习Redis 从入门到高可用分布式实践

Redis课程升级!系统梳理Redis知识体系,掌握redis必备!

2277 学习 · 261 问题

查看课程