Thingsboard 消息队列 kafka topic 设计

欢迎Star该github🐵,长期更新IoT服务器设计的相关文章(后续该文章的优化修改只会该git)
本文解释为什么Thingsboard微服务分布式下-设备控制的数据流-架构与可用性分析(有架构图) 的图中,topic有"tb_rule_engine.main.3","tb_core.notification.tb-core-1"这两种的格式

.3是指partition是3

因为TB(Thingsboard)对很多消息队列(queue)进行了支持,所以对queue做了抽象,抽象层的topic就是"tb_rule_engine.main.3"
有的queue没有分区(partition)的概念,对于这些queue,topic就是"tb_rule_engine.main.3"(相当于一个一级菜单),该topic只会被一个node消费
Kafka有partition,最终子类实现时,topic是tb_rule_engine_main,而partition就是3(相当于一个二级菜单),该partition只会被一个node消费

.main是什么?

‘tb_rule_engine.main’ 是一般消息
‘tb_rule_engine.hp’ 是 high priority 高优先级消息.(如下图源码,highPriorityMsgs里有消息,就不会处理normalPriorityMsgs的消息,从而实现消息处理的优先级)
‘tb_rule_engine.sq’ 是sequence有顺序的消息(会牺牲性能)
image

.notification是什么?

notification的消息只会发给制定的一个node(.tb-core-1),相当于消费组里只有一个消费者
image

留言讨论区

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值