From bec46c29195a4b33ea0ee8ad625fe5fbcef7b879 Mon Sep 17 00:00:00 2001 From: lzh Date: Fri, 13 Feb 2026 16:19:42 +0800 Subject: [PATCH] =?UTF-8?q?fix(rocketmq):=20=E4=BF=AE=E6=AD=A3ACL=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E4=BD=8D=E7=BD=AE=E5=88=B0producer/consumer=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit rocketmq-spring-boot-starter的access-key/secret-key需配置在 producer和consumer节点下而非rocketmq根节点,同时为所有 @RocketMQMessageListener注解添加accessKey/secretKey属性。 Co-Authored-By: Claude Opus 4.6 --- .../src/main/resources/application-prod.yaml | 9 +++++---- .../src/main/resources/application-prod.yaml | 10 +++++++--- .../consumer/BadgeDeviceStatusEventHandler.java | 8 ++++++-- .../consumer/CleanOrderArriveEventHandler.java | 4 +++- .../consumer/CleanOrderAuditEventHandler.java | 9 ++++++++- .../consumer/CleanOrderCompleteEventHandler.java | 9 ++++++++- .../consumer/CleanOrderConfirmEventHandler.java | 4 +++- .../consumer/CleanOrderCreateEventHandler.java | 9 ++++++++- .../src/main/resources/application-prod.yaml | 10 +++++++--- .../src/main/resources/application-prod.yaml | 10 +++++++--- 10 files changed, 62 insertions(+), 20 deletions(-) diff --git a/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml index 81b2d67..f9938e1 100644 --- a/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml +++ b/viewsh-module-iot/viewsh-module-iot-gateway/src/main/resources/application-prod.yaml @@ -20,12 +20,13 @@ spring: # rocketmq 配置项,对应 RocketMQProperties 配置类 rocketmq: name-server: ${ROCKETMQ_NAMESRV_ADDR:rmq-4wd73bxpv.rocketmq.sh.qcloud.tencenttdmq.com:8080} - # 腾讯云 TDMQ ACL 认证 - access-key: ${ROCKETMQ_ACCESS_KEY:} - secret-key: ${ROCKETMQ_SECRET_KEY:} - # Producer 配置项 producer: group: ${spring.application.name}_PRODUCER + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} + consumer: + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} --- #################### IoT 网关相关配置 #################### diff --git a/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml b/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml index e5625d6..d718887 100644 --- a/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml +++ b/viewsh-module-iot/viewsh-module-iot-server/src/main/resources/application-prod.yaml @@ -89,9 +89,13 @@ spring: rocketmq: name-server: ${ROCKETMQ_NAMESRV_ADDR:rmq-4wd73bxpv.rocketmq.sh.qcloud.tencenttdmq.com:8080} - # 腾讯云 TDMQ ACL 认证 - access-key: ${ROCKETMQ_ACCESS_KEY:} - secret-key: ${ROCKETMQ_SECRET_KEY:} + producer: + group: ${spring.application.name}_PRODUCER + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} + consumer: + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} spring: # 禁用 RabbitMQ 自动配置(如果不需要 RabbitMQ,避免启动时连接失败) diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/BadgeDeviceStatusEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/BadgeDeviceStatusEventHandler.java index 2dd72e0..fa65c52 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/BadgeDeviceStatusEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/BadgeDeviceStatusEventHandler.java @@ -42,10 +42,14 @@ import java.util.concurrent.TimeUnit; */ @Slf4j @Component -@RocketMQMessageListener(topic = "integration-device-status", +@RocketMQMessageListener( + topic = "integration-device-status", consumerGroup = "ops-badge-status-consumer", consumeMode = ConsumeMode.CONCURRENTLY, - selectorExpression = "*") + selectorExpression = "*", + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" +) public class BadgeDeviceStatusEventHandler implements RocketMQListener { /** diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderArriveEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderArriveEventHandler.java index 1c649fd..fa891b3 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderArriveEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderArriveEventHandler.java @@ -58,7 +58,9 @@ import java.util.concurrent.TimeUnit; topic = "ops-order-arrive", consumerGroup = "ops-clean-order-arrive-group", consumeMode = ConsumeMode.CONCURRENTLY, - selectorExpression = "*" + selectorExpression = "*", + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" ) public class CleanOrderArriveEventHandler implements RocketMQListener { diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderAuditEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderAuditEventHandler.java index 229e15c..6daf7a6 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderAuditEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderAuditEventHandler.java @@ -37,7 +37,14 @@ import java.util.concurrent.TimeUnit; */ @Slf4j @Component -@RocketMQMessageListener(topic = "ops-order-audit", consumerGroup = "ops-clean-order-audit-group", consumeMode = ConsumeMode.CONCURRENTLY, selectorExpression = "*") +@RocketMQMessageListener( + topic = "ops-order-audit", + consumerGroup = "ops-clean-order-audit-group", + consumeMode = ConsumeMode.CONCURRENTLY, + selectorExpression = "*", + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" +) public class CleanOrderAuditEventHandler implements RocketMQListener { /** diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCompleteEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCompleteEventHandler.java index 3af6414..30ad827 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCompleteEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCompleteEventHandler.java @@ -61,7 +61,14 @@ import java.util.concurrent.TimeUnit; */ @Slf4j @Component -@RocketMQMessageListener(topic = "ops-order-complete", consumerGroup = "ops-clean-order-complete-group", consumeMode = ConsumeMode.CONCURRENTLY, selectorExpression = "*") +@RocketMQMessageListener( + topic = "ops-order-complete", + consumerGroup = "ops-clean-order-complete-group", + consumeMode = ConsumeMode.CONCURRENTLY, + selectorExpression = "*", + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" +) public class CleanOrderCompleteEventHandler implements RocketMQListener { /** diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderConfirmEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderConfirmEventHandler.java index c2778b7..3979606 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderConfirmEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderConfirmEventHandler.java @@ -54,7 +54,9 @@ import java.util.concurrent.TimeUnit; @RocketMQMessageListener( topic = "ops-order-confirm", consumerGroup = "ops-clean-order-confirm-group", - consumeMode = ConsumeMode.CONCURRENTLY + consumeMode = ConsumeMode.CONCURRENTLY, + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" ) public class CleanOrderConfirmEventHandler implements RocketMQListener { diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCreateEventHandler.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCreateEventHandler.java index cad90d8..ca1b621 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCreateEventHandler.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/integration/consumer/CleanOrderCreateEventHandler.java @@ -48,7 +48,14 @@ import java.util.concurrent.TimeUnit; */ @Slf4j @Component -@RocketMQMessageListener(topic = "ops-order-create", consumerGroup = "ops-clean-order-create-group", consumeMode = ConsumeMode.CONCURRENTLY, selectorExpression = "*") +@RocketMQMessageListener( + topic = "ops-order-create", + consumerGroup = "ops-clean-order-create-group", + consumeMode = ConsumeMode.CONCURRENTLY, + selectorExpression = "*", + accessKey = "${rocketmq.consumer.access-key:}", + secretKey = "${rocketmq.consumer.secret-key:}" +) public class CleanOrderCreateEventHandler implements RocketMQListener { /** diff --git a/viewsh-module-ops/viewsh-module-ops-server/src/main/resources/application-prod.yaml b/viewsh-module-ops/viewsh-module-ops-server/src/main/resources/application-prod.yaml index b968386..d39c63b 100644 --- a/viewsh-module-ops/viewsh-module-ops-server/src/main/resources/application-prod.yaml +++ b/viewsh-module-ops/viewsh-module-ops-server/src/main/resources/application-prod.yaml @@ -80,9 +80,13 @@ spring: # rocketmq 配置项,对应 RocketMQProperties 配置类 rocketmq: name-server: ${ROCKETMQ_NAMESRV_ADDR:rmq-4wd73bxpv.rocketmq.sh.qcloud.tencenttdmq.com:8080} # RocketMQ Namesrv - # 腾讯云 TDMQ ACL 认证 - access-key: ${ROCKETMQ_ACCESS_KEY:} - secret-key: ${ROCKETMQ_SECRET_KEY:} + producer: + group: ${spring.application.name}_PRODUCER + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} + consumer: + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} spring: # RabbitMQ 配置项,对应 RabbitProperties 配置类 diff --git a/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml b/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml index 5be9e92..b3b52e1 100644 --- a/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml +++ b/viewsh-module-system/viewsh-module-system-server/src/main/resources/application-prod.yaml @@ -85,9 +85,13 @@ spring: # rocketmq 配置项 rocketmq: name-server: ${ROCKETMQ_NAMESRV_ADDR:rmq-4wd73bxpv.rocketmq.sh.qcloud.tencenttdmq.com:8080} - # 腾讯云 TDMQ ACL 认证 - access-key: ${ROCKETMQ_ACCESS_KEY:} - secret-key: ${ROCKETMQ_SECRET_KEY:} + producer: + group: ${spring.application.name}_PRODUCER + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} + consumer: + access-key: ${ROCKETMQ_ACCESS_KEY:} + secret-key: ${ROCKETMQ_SECRET_KEY:} spring: # RabbitMQ 配置项(可选)