我有一个Spring-boot服务,它通过MQTT服务器使用来自不同设备类型的消息,当然每个设备类型都有自己的消息格式。目前有五种类型。它们中的每一个都由应用程序中的单独组件处理。总共每秒大约有15 000条消息。这些消息甚至不会传播到主题上,一个主题只有10 000个。我试图在Paho客户端找到一些最佳实践和性能信息,但那里没有太多。
Paho客户端在高负载期间如何执行? 我应该留在订阅所有消息的一个Paho客户端,然后在内部将它们路由到正确的消费者,还是应该让每个消费者组件创建自己的客户端?
现在我倾向于第二种选择。将创建更多线程,但代码更少(无需创建路由等)和更好的分离。但另一方面,有多个客户端正在运行。
答案 0 :(得分:0)
现在我倾向于第二种选择。会有更多的主题 创建但更少的代码(不需要创建路由等)和更好 分离
我同意,第二种方法是最好的。始终遵循KIS(保持简单)原则。