`
can_do
  • 浏览: 269315 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

EMQX中如何使用共享订阅(消费者集群)

阅读更多
1、首先,需要明确的是,EMQX支持共享订阅,或者称为消费者集群。

EMQ X支持共享订阅,类似Kafka的consumer_group,共享订阅同一个topic时,相当对该topic进行分发消费(消费者集群),而不是复制消费。

2、EMQX 服务端配置,

1> 开启共享订阅参数【true】

## Whether the Server supports Shared Subscriptions
##
## Value: boolean
# remedied by can_do on 2019-07-11
zone.external.shared_subscription = true

2> 配置订阅共享订阅策略

## - random
## - round_robin
## - sticky
## - hash
>>>broker.shared_subscription_strategy = random
>>>zone.external.shared_subscription = false
>>>broker.shared_dispatch_ack_enabled = false

3、共享订阅使用说明
1> pub端正常向指定topic发消息;

2> sub端需要配置成共享订阅方式,通过topic名称区分,即$share+<group_name>+topic,比如:$share/cnd/YourDeviceType/02012345678/+;

4、代码使用举例
public static String generateTopic4TxtCmd2SInGroup() {

	StringBuffer sb = new StringBuffer();
	sb.append("$share");
	sb.append("/");
	sb.append("cmd");
	sb.append("/");
	sb.append("YourDeviceType");
	sb.append("/");
	sb.append("+");
	sb.append("/");
	sb.append("S");
	sb.append("/");
	sb.append("T");
	return sb.toString();
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics