环境信息
- EMQX 版本:EMQ X Broker 4.2.10
- 操作系统及版本:centos 7
- 其他
问题描述
每天消费的消息达到5千万以上,第一步会通过规则转发到一个统一的topic,然后回消费这个统一的topic,实际运行下来发下100条信息里会有3条左右的消费消息延迟在2分钟左右才被消费,请问下有么有办法确认下那个环节消息有延迟了?
每天消费的消息达到5千万以上,第一步会通过规则转发到一个统一的topic,然后回消费这个统一的topic,实际运行下来发下100条信息里会有3条左右的消费消息延迟在2分钟左右才被消费,请问下有么有办法确认下那个环节消息有延迟了?
慢订阅模块是企业版本,我们是开源版本,没有这个模块
5000w 核算下来消息的平均的 TPS 是 578?这样看是不高的。有几个需要补充的
你的这套 Topic 模型设计的有问题,所有消息最终流像同一个 Topic, 这个 Topic 会成为性能瓶颈。如果确实需要这样的模型的话,建议订阅端使用共享订阅,且增加尽可能多的消费者
两台负载,每个机器4C8G
QoS消费都是2
现在有10台机器共享消费,每天机器16个线程
机器的性能看起来够用的(你可以检查下机器的负载)
可以看下共享订阅的这几个机器创建的客户端是否有消息堆积,如果有的话那是消费端的能力跟不上
如果100条中,仅有 3条 延迟突然的高,而不是这100条平均都高。那有可能共享订阅的转发效率的问题,如果是这样的话,需要发下共享订阅相关的配置
共享订阅的相关配置在哪里看?开源版本的
在 emqx.conf 里面的,所有包含 shared_subscription 的配置项 都是的