生产者和消费者,发消息和接收消息,完整示例
RocketMQ是阿里巴巴在2012年开源的分布式消息中间件,目前已经捐赠给Apache基金会,已经于2016年11月成为 Apache 孵化项目,相信RocketMQ的未来会发挥着越来越大的作用,将有更多的开发者因此受益。
本文仅对RocketMQ的简单实用做入门性介绍,不对RocketMQ的底层原理进行深入介绍,后续文章将对RocketMQ的原理做详细介绍。
一、添加RocketMQ的Maven依赖:
[java] view plain copy
- <!-- https://mvnrepository.com/artifact/com.alibaba.rocketmq/rocketmq-client -->
- <dependency>
- <groupId>com.alibaba.rocketmq</groupId>
- <artifactId>rocketmq-client</artifactId>
- <version>3.2.6</version>
- </dependency>
二、 MQ的消费类RocketMQConsumer.java:
[java] view plain copy
- package com.lance.rocketMQ.RocketMQ;
- import com.alibaba.rocketmq.client.consumer.DefaultMQPushConsumer;
- import com.alibaba.rocketmq.client.consumer.listener.MessageListener;
- import com.alibaba.rocketmq.client.consumer.listener.MessageListenerConcurrently;
- import com.alibaba.rocketmq.client.exception.MQClientException;
- import com.alibaba.rocketmq.common.consumer.ConsumeFromWhere;
- import java.util.UUID;
- /**
- * 消费类
- */
- public class RocketMQConsumer {
- private DefaultMQPushConsumer consumer;
- private MessageListener listener;
- protected String nameServer;
- protected String groupName;
- protected String topics;
- public RocketMQConsumer(MessageListener listener, String nameServer, String groupName, String topics) {
- this.listener = listener;
- this.nameServer = nameServer;
- this.groupName = groupName;
- this.topics = topics;
- }
- /**
- * 初始化方法