MQ消费者不在线问题定位

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: authority.exception.AuthenticationException

mq消费者不在线,基本原因在于网络和权限两个方面,下面分别介绍不同的定位思路。

13_55_27__08_03_2018

网络排查

主要是排查部署消费者程序服务器是否可以连通接入域名,这里就涉及域名是否正确,topic区域限制等。

  • topic区域限制:生产端和消费端可以部署在本地或者部署在任意地域的 ECS 上,前提是本地服务器或者相应的 ECS 需要能够访问公网。如果在非公网区域使用 MQ 服务,需要将应用程序部署在阿里云 ECS 上,同时 Topic 也需要在应用程序所在的区域(即所部署的 ECS 区域)进行创建。Topic 不能跨域使用。 比如 Topic 创建在“华北 2”这个域,那么消息生产端和消费端也必须运行在“华北 2”的 ECS 上。
  • 符合topic限制,那么建议命令核实一下网络,执行如下命令,从ecs安全组以及防火墙进行核实
curl http://onsaddr-internet.aliyun.com/rocketmq/nsaddr4client-internet

ping onsaddr-internet.aliyun.com

telnet onsaddr-internet.aliyun.com 80

备注:命令以公网接入域名举例

权限排查:

mq目前对权限加强了控制,当权限认证不通过的时候,也会出现消费者不在线。

醒目提示
authority.exception.AuthenticationException: valid resource owner failed. 查看本地日志ons.log 路径是{userhome}/logs/ons.log

  • 代码中ak/sk的拥有者账号是否授权,主账号创建的topic,如果没有授权给子账号时无法通过子账号的ak/sk访问。具体授权 link
  • cid和pid非代码中配置ak/sk的账号创建的,这个是最容易忽略的,一定要核实清楚。
相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
5月前
|
消息中间件 存储 负载均衡
Rabbitmq direct模式保证一个队列只对应一个消费者
Rabbitmq direct模式保证一个队列只对应一个消费者
108 0
|
3月前
|
消息中间件 SQL Java
RabbitMQ之消费者可靠性
RabbitMQ之消费者可靠性
|
3月前
|
消息中间件 Java
Java操作RabbitMQ单一生产-消费者模式
Java操作RabbitMQ单一生产-消费者模式
29 0
|
3天前
|
消息中间件 供应链 Java
RabbitMQ入门指南(九):消费者可靠性
RabbitMQ是一个高效、可靠的开源消息队列系统,广泛用于软件开发、数据传输、微服务等领域。本文主要介绍了消费者确认机制、失败重试机制、失败处理策略、业务幂等性等内容。
RabbitMQ入门指南(九):消费者可靠性
|
20天前
|
消息中间件 Java RocketMQ
【深度挖掘 RocketMQ底层源码】「底层源码挖掘系列」抽丝剥茧贯穿RocketMQ的消费者端的运行核心的流程(Pull模式-下)
【深度挖掘 RocketMQ底层源码】「底层源码挖掘系列」抽丝剥茧贯穿RocketMQ的消费者端的运行核心的流程(Pull模式-下)
12 1
|
20天前
|
消息中间件 存储 NoSQL
【深度挖掘 RocketMQ底层源码】「底层源码挖掘系列」透彻剖析贯穿RocketMQ的消费者端的运行核心的流程(Pull模式-上)
【深度挖掘 RocketMQ底层源码】「底层源码挖掘系列」透彻剖析贯穿RocketMQ的消费者端的运行核心的流程(Pull模式-上)
24 1
|
3月前
|
消息中间件 API RocketMQ
你的RocketMQ消费者组(Consumer Group)在查看时显示为离线,这可能是由于消费者组的状态没有被正确更新
你的RocketMQ消费者组(Consumer Group)在查看时显示为离线,这可能是由于消费者组的状态没有被正确更新【1月更文挑战第10天】【1月更文挑战第49篇】
198 5
|
9月前
|
消息中间件 数据库
如何保证 RabbitMQ 消费者端在更新数据库时可以成功
如何保证 RabbitMQ 消费者端在更新数据库时可以成功
146 0
|
4月前
|
消息中间件 存储 安全
mq 消费者监听经常断会出现丢消息的问题吗
在消息队列(MQ)系统中,消费者监听经常断开可能会导致消息丢失的问题,具体取决于消息队列系统的设计和配置,以及你的应用程序的处理方式。以下是一些可能导致消息丢失问题的情况: 1. **消费者断开连接:** 如果消费者监听过程中发生意外断开,例如网络故障、消费者应用程序崩溃等,那么在断开连接的瞬间,可能存在未被消费的消息。 2. **消息确认机制:** 消息队列通常提供消息确认机制,确保消息在被成功处理后才被从队列中移除。如果你的消费者应用程序在处理消息时没有发送确认,或者确认机制配置不正确,可能导致消息在被处理前被从队列中移除,从而丢失。 3. **持久化设置:** 消息队列通常提供持久
|
5月前
|
Java 测试技术 Spring
10 Spring集成MQTT(生产者与消费者)
10 Spring集成MQTT(生产者与消费者)
71 0

热门文章

最新文章