@RocketMQMessageListener
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RocketMQMessageListener {
// nameServer服务地址,多个用;隔开,可以直接在注解中指定也可以读取配置文件
String NAME_SERVER_PLACEHOLDER = "${rocketmq.name-server:}";
// ACL验证key,服务端开启了ACL时使用,可以直接在注解中指定也可以读取配置文件
String ACCESS_KEY_PLACEHOLDER = "${rocketmq.consumer.access-key:}";
// ACL验证密钥,服务端开启了ACL时使用,可以直接在注解中指定也可以读取配置文件
String SECRET_KEY_PLACEHOLDER = "${rocketmq.consumer.secret-key:}";
// 自定义的消息轨迹主题
String TRACE_TOPIC_PLACEHOLDER = "${rocketmq.consumer.customized-trace-topic:}";
String ACCESS_CHANNEL_PLACEHOLDER = "${rocketmq.access-channel:}";
// 消费者分组,不同消费者分组名称不能重复
String consumerGroup();
// topic名称
String topic();
// selectorType 消息选择器类型
// 默认值 SelectorType.TAG 根据TAG选择
// 仅支持表达式格式如:“tag1 || tag2 || tag3”,如果表达式为null或者“*”标识订阅所有消息
// SelectorType.SQL92 根据SQL92表达式选择
SelectorType selectorType() default SelectorType.TAG;
/**
* Control which message can be select. Grammar please see {@link SelectorType#TAG} and {@link SelectorType#SQL92}
*/
String selectorExpression() default "*";
// 消费模式,可以选择并发或有序接收消息,默认并发消费 ConsumeMode.CONCURRENTLY
ConsumeMode consumeMode() default ConsumeMode.CONCURRENTLY;
// 控制消息模式,可以选择集群和广播,默认集群 MessageModel.CLUSTERING
// 集群: 消息只会被一个消费者消费 广播:消息被所有消费者都消费一次
MessageModel messageModel() default MessageModel.CLUSTERING;
// 消费者最大线程数,在5.x版本该参数已经不推荐使用,因为该实现方式底层线程使用LinkedBlockingQueue作为阻塞队列,队列长度使用Integer.MAX_VALUE。
@Deprecated
int consumeThreadMax() default 64;
// 消费线程数,属于rocketmq-spring-boot-starter 2.2.3新参数,推荐使用该版本
int consumeThreadNumber() default 20;
// 消费失败重试次数,在MessageModel.CLUSTERING模式中,-1表示16,消费失败后会重试16次
int maxReconsumeTimes() default -1;
// 最大消费时间 默认15分钟
long consumeTimeout() default 15L;
// 发送回复消息超时 默认3000毫秒
int replyTimeout() default 3000;
// ACL验证key,服务端开启了ACL时使用,可以直接在注解中指定也可以读取配置文件
String accessKey() default ACCESS_KEY_PLACEHOLDER;
// ACL验证密钥,服务端开启了ACL时使用,可以直接在注解中指定也可以读取配置文件
String secretKey() default SECRET_KEY_PLACEHOLDER;
// 切换消息跟踪的标志实例
boolean enableMsgTrace() default false;
// 自定义跟踪主题
String customizedTraceTopic() default TRACE_TOPIC_PLACEHOLDER;
// nameServer服务地址,可以直接在注解中指定也可以读取配置文件
String nameServer() default NAME_SERVER_PLACEHOLDER;
// The property of "access-channel".
String accessChannel() default ACCESS_CHANNEL_PLACEHOLDER;
// The property of "tlsEnable" default false.
String tlsEnable() default "false";
// 使用者的命名空间
String namespace() default "";
// 并发模式下的消息消耗重试策略,下次消费时的延迟级别
int delayLevelWhenNextConsume() default 0;
// 以有序模式暂停拉入的间隔,以毫秒为单位。
// 最小值为10,最大值为30000 默认1000毫秒
int suspendCurrentQueueTimeMillis() default 1000;
// 关闭使用者时等待消息消耗的最长时间,以毫秒为单位。
// 最小值为0 默认1000毫秒
int awaitTerminationMillisWhenShutdown() default 1000;
// 实例名称
String instanceName() default "DEFAULT";
}
文章来源地址https://www.toymoban.com/news/detail-609384.html
文章来源:https://www.toymoban.com/news/detail-609384.html
到了这里,关于SpringBoot集成RocketMQ消费者@RocketMQMessageListener注解参数介绍(内含5.x新参数介绍-rocketmq-spring-boot-starter 2.2.3)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!