V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ljmready
V2EX  ›  程序员

请教一个关于 RocketMQ 消费堵塞的问题

  •  1
     
  •   ljmready · 2020-02-09 16:55:07 +08:00 · 2272 次点击
    这是一个创建于 1752 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景: 从 rocketmq 中 10 个 queue 消费出数据,处理完后写入数据库,总体 qps 大概在 4k

    现象: 写入数据库的耗时变高后,会出现队列堵塞,并且在数据库耗时下降后,队列依旧堵塞。观察 mq 的控制面板和业务日志发现有个别 queue 会停止消费,直到手动启动 client 才会恢复消费。

    问题:

    为什么数据库耗时下降后,队列的消费进度不会逐渐恢复,而是要手动重启?

    请大佬们指点下,谢谢!

    第 1 条附言  ·  2023-04-25 20:06:59 +08:00
    应该排查 Consume Thread 的情况,检查线程池中的线程被业务逻辑堵塞住了
    3 条回复    2020-02-09 20:25:02 +08:00
    find
        1
    find  
       2020-02-09 17:44:35 +08:00 via iPhone
    又有新的消息发送到了 mq 里面
    abcbuzhiming
        2
    abcbuzhiming  
       2020-02-09 18:10:56 +08:00
    你是不是参数设错了,数据库的耗时变高后,消费 client 可能因为超时而出错,多次出错后,client 可能会自动停下来,我在别的消息队列里见过这种设计
    ljmready
        3
    ljmready  
    OP
       2020-02-09 20:25:02 +08:00
    @abcbuzhiming 没见到有这种设置,我再查一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5436 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 09:01 · PVG 17:01 · LAX 01:01 · JFK 04:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.