共享订阅消息派发策略

image
想问下这个通过源主题来选择订阅者是如何选择的,能达到一种效果就是:我共享订阅有多个客户端(客户端A、B、C等等),其中topic(topic1、2、3等等);topic1的消息只发给A、topic2的消息只给C这样;就是相同topic的消息只会发给其中某一个特定的客户端。能达到这个效果嘛

可以。
就是 hash 了一下消息里面的 topic,出来的 hash 值是固定的,就会路由到同一个 clienid 上。

hash_clientid是不是也可以达到这个效果

具体的路由策略是什么样的?会不会出现客户端A路由的topic特别多 反而客户端B路由的topic特别少

不行啊。
你不是需要:相同的 topic 发给同一个客户端么
当 hash_client,
共享订阅是/topic/#
一个 clientid 发出来 /topic/1 /topic/2 /topic/3, 那他们会路由给同一个 clientid 的。
没达到你的需求。

你的意思是一个clientidA发出来topic1 topic2 topic3 最后会路由给同一个clientidB的接收客户端;
然后另一个clientidC发出来topic1 topic2 topic3 最后路由给同一个clientidD的接收客户端; 这样会出现topic1的消息一下给了B一下给了D嘛?
如果是这个意思的话,那如果topic1的消息只有clientidA能发出来是不是就可以了