Springboot结合RocketMq ons client使用封装

621 阅读1分钟

应用服务接入:

  1. pom文件引入
<test-mq-cient.version>0.0.1-SNAPSHOT</test-mq-cient.version>

<dependency>
    <groupId>com.test</groupId>
    <artifactId>test-mq</artifactId>
    <version>${test-mq.version}</version>
</dependency>

2、配置文件接入

如不需要接入comsumer,不配置consumeThreadNums、consumerTopicWithTags 即可;* 代表订阅所有的tag
rocketmq:
    accessKey: ********************
    secretKey: ********************
    nameSrvAddr: ********************
    groupId: ********************
    consumeThreadNums: 8
    consumerTopicWithTags:
        - firstTopic:*
        - secTopic:firstTag,secTag,thridTag

3、生产者使用

@Resource
private ProducerBean producerBean;

Message message = new Message(MQConstants.Topic.LIFE_POLICY, MQConstants.Tag.POLICY_CREATE, param.getPolicyBasic().getPolicyNo(), JSON.toJSONBytes(msg));
SendResult sendResult = producerBean.send(message);

4、消费者使用

@Consume(topic = MQConstants.Topic.DemoTopic, tag = MQConstants.Tag.DemoTag)
@Component
@Slf4j
public class DemoConsumer implements Consumer {

    @Override
    public Action consume(Message message, ConsumeContext context) {
        log.info("DemoConsumer:{}", JSON.toJSON(message));
        // TODO business process
        return Action.CommitMessage;
    }