是的,大概率是某个线程阻塞了。导致这个节点消息消费不了...底层k8s的镜像jstack命令都不支持,我让运维升级一下镜像去.,此回答整理自钉群“群1-Apache RocketMQ 中国开发者钉钉群”
当RocketMQ实例被删除后,所有的消息以及队列将会被清除,并且无法恢复。关于阻塞转移的问题,RocketMQ的设计哲学是实现灵活的多分区和多副本机制,以有效避免集群内单点故障对于整体服务可用性的影响。这意味着,如果某一节点发生故障或者被删除,其它的节点会立即接管它的任务,确保服务的稳定性。然而,一旦RocketMQ实例被删除,该节点的所有任务包括阻塞的任务都会被移交到其它节点。所以,如果你打算删除某个RocketMQ实例,需要提前做好相关任务的迁移工作,以确保服务的连续性。
当RocketMQ broker被删除后,消息并不会转移到其它节点。相反的,如果一个broker被删除,那么与其关联的所有topic都会被重新分配给其它的broker。RocketMQ的路由发现不是实时的,NameServer不会主动向客户端推送新的路由信息,而是客户端定时拉取主题最新的路由,然后更新。因此,一旦broker出现故障或者被删除,客户端需要重新获取最新的路由信息以确定消息的新位置。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/