@Target(value=METHOD)
@Retention(value=RUNTIME)
@Documented
public @interface RocketMqConcurrentConsumer
RocketMQ 普通并发消费者
注意!!! 消费者必须保证幂等性! 任何一条消息都有可能被重复消费!
https://github.com/shepherdviolet/slate/blob/master/docs/rocketmq/guide.md
@RocketMqConcurrentConsumer(
consumerGroup = "consumer-a",
topic = "test-topic",
subExpression = "tag-a || tag-b || tag-c"
)
public boolean test(MessageExt message){
logger.info("Received MessageExt: {}", message);
return true;
}
| 限定符和类型 | 必需的元素和说明 |
|---|---|
java.lang.String |
consumerGroup
消费组名
|
java.lang.String |
topic
Topic
|
| 限定符和类型 | 可选元素和说明 |
|---|---|
java.lang.String |
charset
字符集, 默认UTF-8
|
ConsumeWay |
consumeFromWhere
选择消息从队列头还是队列尾开始消费
|
boolean |
isBroadcast
是否以广播方式订阅
|
java.lang.String |
nameServer
指定NameServer地址.
|
boolean |
reconsumeWhenException
true 抛出异常时重新消费消息(RECONSUME_LATER), 默认false
|
java.lang.String |
sqlExpression
使用SQL92过滤消息.
|
java.lang.String |
subExpression
订阅表达式, 例如: TagA || TagB || TagC, 默认全订阅.
|
int |
threadMax
最大线程数,
这个参数目前无效, 请设置threadMin, 见https://github.com/apache/rocketmq-spring/issues/184
|
int |
threadMin
最小线程数
|
public abstract java.lang.String subExpression
public abstract java.lang.String sqlExpression
public abstract ConsumeWay consumeFromWhere
public abstract int threadMax
public abstract boolean reconsumeWhenException
public abstract java.lang.String nameServer