最近需要将kafka应用到物联网云平台上,目前有设备接入节点负责把数据推送到kafka,但是kafak里面的主题和分区应该怎么设计,才能做到要什么设备的数据消费者端就能获取到什么设备的数据? 设备数量可能在十万这个量级。
使用
MQTT
吧,kafka不适合这种场景。这个物联网项目不涉及MQTT协议,用的是
modbusTCP
和NB-IOT
.因为kafka所有的连接都是长连接,特别是互联网的场景就更不合适。
互联网(指外网场景)
kafka服务器 和kafak生产者消费者都在内网。对外有设备接入服务处理设备的接入,设备接入服务把数据给kafka服务器。问题在kafak消费者获取数据的时候出现问题,要是消费者消费所有设备数据会撑不住。我想要能在消费者端能指定获取那个设备的数据,这里主题和分区要怎么设计的问题。性能可以降低一点。或者有什么更合适的MQ?
消费者和生产者是相互独立的,分2个步骤说吧
生产者
消费者
生产者采用的是数十万个设备 -> (你的程序,聚合,http API) -> kafka集群
消费者poll消息这里应该怎么设计kafak的主题和分区。
所有数据都在一个主题还是在(我的程序里)生产者端将不同设备的数据推送到不同的kafak主题
松耦合,各自类型的消息放到不同的topic里,由各自的消费者处理。
好处:
分区
/消费者
的数量嗯嗯,谢谢大佬
你的答案