遇到的问题
- 启动的时候报错,因为没有修改配置文件,导致内存溢出,参考1.3修改
- RemotingConnectException: connect to <172.17.0.1:10909> failed 多网卡情况下未指定mq的ip地址(这个ip是docker的ip),参考1.3修改
- No route info of this topic, TopicTest(启动未开启自动创建topic)
下载编译
1.1 准备
配置好jdk、maven,详情:Linux-Ubuntu安装:JDK & Tomcat & Maven - 简单教程
1.2 下载 & 安装
现在网上挺多帖子还是以前的,rocketMQ现在已经迁移到apache
# 克隆代码到本地
git clone -b develop https://github.com/apache/rocketmq.git
# 进入目录
cd rocketmq
# 编译项目
mvn -Prelease-all -DskipTests clean install -U
# 进入到rocketMQ程序bin目录
cd distribution/target/apache-rocketmq/bin
1.3 修改配置文件
vi /apache-rocketmq/bin/runbroker.sh
#JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"
#把上面那行注释,不然虚拟机会内存溢出无法启动
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx512m -Xmn256m"
vi /apache-rocketmq/bin/runserver.sh
#JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:PermSize=128m -XX:MaxPermSize=320m"
#把上面那行注释,不然虚拟机会内存溢出无法启动
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=320m"
vi /apache-rocketmq/conf/broker.conf
#在文件结尾添加如下配置,指定ip地址,防止多网卡下的混乱
namesrvAddr = 127.0.0.1:9876
brokerIP1 = 127.0.0.1
1.4 配置端口转发
我这里使用的是Oracle VM VirtualBox
在虚拟机的网络里面设置端口转发,不然可能无法跟物理主机沟通
- 使用NAT网络
- 端口转发配置
名称 | 协议 | 主机IP | 主机端口 | 子系统IP | 子系统端口 |
---|---|---|---|---|---|
rocketMQ | TCP | 127.0.0.1 | 10909 | 10.0.2.15 | 10909 |
rocketMQ-1 | TCP | 127.0.0.1 | 9876 | 10.0.2.15 | 9876 |
1.5 启动程序
# &代表程序会后台执行,执行完事可以直接输入接下来的命令,也可以Ctrl+C
sh mqnamesrv &
# 指定nameserver的地址,以及指定配置文件,开启自动创建Topic
sh mqbroker -n 127.0.0.1:9876 -c /usr/hisen/soft/apache-rocketmq/conf/broker.conf autoCreateTopicEnable=true &
代码测试
2.1 添加maven依赖
<dependency>
<groupId>com.alibaba.rocketmq</groupId>
<artifactId>rocketmq-common</artifactId>
<version>3.2.6</version>
</dependency>
2.2 生产者代码
package com.hisen.jars.rocketmq;
import com.alibaba.rocketmq.client.exception.MQBrokerException;
import com.alibaba.rocketmq.client.exception.MQClientException;
import com.alibaba.rocketmq.client.producer.DefaultMQProducer;
import com.alibaba.rocketmq.client.producer.SendResult;
import com.alibaba.rocketmq.common.message.Message;
import com.alibaba.rocketmq.remoting.common.RemotingHelper;
import com.alibaba.rocketmq.remoting.exception.RemotingException;
import java.io.UnsupportedEncodingException;
public class Producer {
public static void main(String[] args) throws MQClientException {
DefaultMQProducer producer = new DefaultMQProducer("producer1");
producer.setNamesrvAddr("127.0.0.1:9876");
producer.start();
for (int i = 0; i < 10; i++) {
try {
Message message = new Message(
"TopicTest",
"TagA",
("hello rocketMQ" + i).getBytes(RemotingHelper.DEFAULT_CHARSET)
);
SendResult send = producer.send(message);
System.out.println(send);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (RemotingException e) {
e.printStackTrace();
} catch (MQBrokerException e) {
e.printStackTrace();
}
}
producer.shutdown();
}
}
2.3消费者
package com.hisen.jars.rocketmq;
import com.alibaba.rocketmq.client.consumer.DefaultMQPushConsumer;
import com.alibaba.rocketmq.client.consumer.listener.ConsumeConcurrentlyContext;
import com.alibaba.rocketmq.client.consumer.listener.ConsumeConcurrentlyStatus;
import com.alibaba.rocketmq.client.consumer.listener.MessageListenerConcurrently;
import com.alibaba.rocketmq.client.exception.MQClientException;
import com.alibaba.rocketmq.common.consumer.ConsumeFromWhere;
import com.alibaba.rocketmq.common.message.MessageExt;
import java.util.List;
public class Consumer {
public static void main(String[] args) throws MQClientException {
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("consumer1");
consumer.setNamesrvAddr("127.0.0.1:9876");
consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET);
consumer.subscribe("TopicTest","*");
consumer.registerMessageListener(new MessageListenerConcurrently() {
@Override
public ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> msgs, ConsumeConcurrentlyContext consumeConcurrentlyContext) {
System.out.println(Thread.currentThread().getName() +"Receive new message:" + msgs);
return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;
}
});
consumer.start();
System.out.println("consumer");
}
}
2.4测试结果
2.4.1生产者
C:\work\soft\java8\bin\java "-javaagent:C:\work\soft\idea\IntelliJ IDEA 2017.3\lib\idea_rt.jar=59980:C:\work\soft\idea\IntelliJ IDEA 2017.3\bin" -Dfile.encoding=UTF-8 -classpath C:\work\soft\java8\jre\lib\charsets.jar;C:\work\soft\java8\jre\lib\deploy.jar;C:\work\soft\java8\jre\lib\ext\access-bridge-64.jar;C:\work\soft\java8\jre\lib\ext\cldrdata.jar;C:\work\soft\java8\jre\lib\ext\dnsns.jar;C:\work\soft\java8\jre\lib\ext\jaccess.jar;C:\work\soft\java8\jre\lib\ext\jfxrt.jar;C:\work\soft\java8\jre\lib\ext\localedata.jar;C:\work\soft\java8\jre\lib\ext\nashorn.jar;C:\work\soft\java8\jre\lib\ext\sunec.jar;C:\work\soft\java8\jre\lib\ext\sunjce_provider.jar;C:\work\soft\java8\jre\lib\ext\sunmscapi.jar;C:\work\soft\java8\jre\lib\ext\sunpkcs11.jar;C:\work\soft\java8\jre\lib\ext\zipfs.jar;C:\work\soft\java8\jre\lib\javaws.jar;C:\work\soft\java8\jre\lib\jce.jar;C:\work\soft\java8\jre\lib\jfr.jar;C:\work\soft\java8\jre\lib\jfxswt.jar;C:\work\soft\java8\jre\lib\jsse.jar;C:\work\soft\java8\jre\lib\management-agent.jar;C:\work\soft\java8\jre\lib\plugin.jar;C:\work\soft\java8\jre\lib\resources.jar;C:\work\soft\java8\jre\lib\rt.jar;C:\Users\yuanh\IdeaProjects\IDEAPractice\target\classes;C:\work\soft\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar;C:\work\soft\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\work\soft\repository\org\mybatis\mybatis\3.3.0\mybatis-3.3.0.jar;C:\work\soft\repository\com\alibaba\fastjson\1.2.8\fastjson-1.2.8.jar;C:\work\soft\repository\org\springframework\spring-webmvc\4.1.4.RELEASE\spring-webmvc-4.1.4.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-expression\4.1.4.RELEASE\spring-expression-4.1.4.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-web\4.1.4.RELEASE\spring-web-4.1.4.RELEASE.jar;C:\work\soft\repository\javax\servlet\jstl\1.2\jstl-1.2.jar;C:\work\soft\repository\taglibs\standard\1.1.2\standard-1.1.2.jar;C:\work\soft\repository\mysql\mysql-connector-java\5.1.38\mysql-connector-Java-5.1.38.jar;C:\work\soft\repository\asm\asm\3.3.1\asm-3.3.1.jar;C:\work\soft\repository\cglib\cglib\2.2.2\cglib-2.2.2.jar;C:\work\soft\repository\javassist\javassist\3.12.1.GA\javassist-3.12.1.GA.jar;C:\work\soft\repository\org\apache\logging\log4j\log4j-api\2.0\log4j-api-2.0.jar;C:\work\soft\repository\org\apache\logging\log4j\log4j-core\2.0-rc1\log4j-core-2.0-rc1.jar;C:\work\soft\repository\org\slf4j\slf4j-api\1.7.5\slf4j-api-1.7.5.jar;C:\work\soft\repository\org\slf4j\slf4j-log4j12\1.7.5\slf4j-log4j12-1.7.5.jar;C:\work\soft\repository\redis\clients\jedis\2.9.0\jedis-2.9.0.jar;C:\work\soft\repository\org\apache\commons\commons-pool2\2.4.2\commons-pool2-2.4.2.jar;C:\work\soft\repository\commons-codec\commons-codec\1.9\commons-codec-1.9.jar;C:\work\soft\repository\commons-io\commons-io\2.5\commons-io-2.5.jar;C:\work\soft\repository\org\apache\httpcomponents\httpclient\4.5.1\httpclient-4.5.1.jar;C:\work\soft\repository\org\apache\httpcomponents\httpcore\4.4.3\httpcore-4.4.3.jar;C:\work\soft\repository\dom4j\dom4j\1.6\dom4j-1.6.jar;C:\work\soft\repository\xml-apis\xml-apis\1.0.b2\xml-apis-1.0.b2.jar;C:\work\soft\repository\org\apache\poi\poi\3.14-beta1\poi-3.14-beta1.jar;C:\work\soft\repository\org\mongodb\mongo-java-driver\3.4.1\mongo-java-driver-3.4.1.jar;C:\work\soft\repository\org\springframework\data\spring-data-commons\1.13.4.RELEASE\spring-data-commons-1.13.4.RELEASE.jar;C:\work\soft\repository\org\slf4j\jcl-over-slf4j\1.7.25\jcl-over-slf4j-1.7.25.jar;C:\work\soft\repository\org\springframework\data\spring-data-mongodb\1.9.6.RELEASE\spring-data-mongodb-1.9.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-tx\4.2.9.RELEASE\spring-tx-4.2.9.RELEASE.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-client\3.6.2.Final\rocketmq-client-3.6.2.Final.jar;C:\work\soft\repository\org\springframework\data\spring-data-redis\1.4.0.M1\spring-data-redis-1.4.0.M1.jar;C:\work\soft\repository\org\springframework\spring-context-support\4.0.6.RELEASE\spring-context-support-4.0.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-core\4.3.6.RELEASE\spring-core-4.3.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-beans\4.2.6.RELEASE\spring-beans-4.2.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-aop\4.2.6.RELEASE\spring-aop-4.2.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-context\4.2.6.RELEASE\spring-context-4.2.6.RELEASE.jar;C:\work\soft\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;C:\work\soft\repository\org\apache\geronimo\bundles\aspectjweaver\1.6.8_2\aspectjweaver-1.6.8_2.jar;C:\work\soft\repository\com\google\guava\guava\19.0\guava-19.0.jar;C:\work\soft\repository\org\apache\commons\commons-lang3\3.4\commons-lang3-3.4.jar;C:\work\soft\repository\joda-time\joda-time\2.9.3\joda-time-2.9.3.jar;C:\work\soft\repository\bouncycastle\bcprov-jdk14\140\bcprov-jdk14-140.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-core\2.8.8\jackson-core-2.8.8.jar;C:\work\soft\repository\com\auth0\java-jwt\3.2.0\java-jwt-3.2.0.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-databind\2.8.4\jackson-databind-2.8.4.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-annotations\2.8.0\jackson-annotations-2.8.0.jar;C:\work\soft\repository\org\bouncycastle\bcprov-jdk15on\1.55\bcprov-jdk15on-1.55.jar;C:\work\soft\repository\junit\junit\4.12\junit-4.12.jar;C:\work\soft\repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\work\soft\repository\io\jsonwebtoken\jjwt\0.9.0\jjwt-0.9.0.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-common\3.2.6\rocketmq-common-3.2.6.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-remoting\3.2.6\rocketmq-remoting-3.2.6.jar;C:\work\soft\repository\io\netty\netty-all\4.0.25.Final\netty-all-4.0.25.Final.jar com.hisen.jars.rocketmq.Producer
DEBUG [main] - Using SLF4J as the default logging framework
DEBUG [main] - -Dio.netty.eventLoopThreads: 8
DEBUG [main] - java.nio.Buffer.address: available
DEBUG [main] - sun.misc.Unsafe.theUnsafe: available
DEBUG [main] - sun.misc.Unsafe.copyMemory: available
DEBUG [main] - java.nio.Bits.unaligned: true
DEBUG [main] - Platform: Windows
DEBUG [main] - Java version: 8
DEBUG [main] - -Dio.netty.noUnsafe: false
DEBUG [main] - sun.misc.Unsafe: available
DEBUG [main] - -Dio.netty.noJavassist: false
DEBUG [main] - Javassist: available
DEBUG [main] - -Dio.netty.tmpdir: C:\Users\yuanh\AppData\Local\Temp (java.io.tmpdir)
DEBUG [main] - -Dio.netty.bitMode: 64 (sun.arch.data.model)
DEBUG [main] - -Dio.netty.noPreferDirect: false
DEBUG [main] - -Dio.netty.noKeySetOptimization: false
DEBUG [main] - -Dio.netty.selectorAutoRebuildThreshold: 512
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.initialSeedUniquifier: 0xa3e8e626d77bdd30 (took 15 ms)
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.allocator.type: unpooled
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.threadLocalDirectBufferSize: 65536
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.maxThreadLocalCharBufferSize: 16384
DEBUG [NettyClientSelector_1] - Generated: com.alibaba.rocketmq.shade.io.netty.util.internal.__matchers__.com.alibaba.rocketmq.remoting.protocol.RemotingCommandMatcher
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.recycler.maxCapacity.default: 262144
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.buffer.bytebuf.checkAccessible: true
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.leakDetection.level: simple
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.leakDetection.maxRecords: 4
DEBUG [NettyClientSelector_1] - java.nio.ByteBuffer.cleaner(): available
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F4C80000,offsetMsgId=7F00000100002A9F0000000000000000, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=0], queueOffset=0]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5050001,offsetMsgId=7F00000100002A9F00000000000000B1, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=1], queueOffset=0]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F50A0002,offsetMsgId=7F00000100002A9F0000000000000162, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=2], queueOffset=0]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5130003,offsetMsgId=7F00000100002A9F0000000000000213, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=3], queueOffset=0]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5180004,offsetMsgId=7F00000100002A9F00000000000002C4, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=0], queueOffset=1]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F51C0005,offsetMsgId=7F00000100002A9F0000000000000375, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=1], queueOffset=1]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5200006,offsetMsgId=7F00000100002A9F0000000000000426, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=2], queueOffset=1]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5240007,offsetMsgId=7F00000100002A9F00000000000004D7, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=3], queueOffset=1]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F5290008,offsetMsgId=7F00000100002A9F0000000000000588, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=0], queueOffset=2]
SendResult [sendStatus=SEND_OK, msgId=C0A8016D09D814DAD5DC3AE4F52F0009,offsetMsgId=7F00000100002A9F0000000000000639, messageQueue=MessageQueue [topic=TopicTest, brokerName=broker-a, queueId=1], queueOffset=2]
Process finished with exit code 0
2.4.2消费者
C:\work\soft\java8\bin\java "-javaagent:C:\work\soft\idea\IntelliJ IDEA 2017.3\lib\idea_rt.jar=59280:C:\work\soft\idea\IntelliJ IDEA 2017.3\bin" -Dfile.encoding=UTF-8 -classpath C:\work\soft\java8\jre\lib\charsets.jar;C:\work\soft\java8\jre\lib\deploy.jar;C:\work\soft\java8\jre\lib\ext\access-bridge-64.jar;C:\work\soft\java8\jre\lib\ext\cldrdata.jar;C:\work\soft\java8\jre\lib\ext\dnsns.jar;C:\work\soft\java8\jre\lib\ext\jaccess.jar;C:\work\soft\java8\jre\lib\ext\jfxrt.jar;C:\work\soft\java8\jre\lib\ext\localedata.jar;C:\work\soft\java8\jre\lib\ext\nashorn.jar;C:\work\soft\java8\jre\lib\ext\sunec.jar;C:\work\soft\java8\jre\lib\ext\sunjce_provider.jar;C:\work\soft\java8\jre\lib\ext\sunmscapi.jar;C:\work\soft\java8\jre\lib\ext\sunpkcs11.jar;C:\work\soft\java8\jre\lib\ext\zipfs.jar;C:\work\soft\java8\jre\lib\javaws.jar;C:\work\soft\java8\jre\lib\jce.jar;C:\work\soft\java8\jre\lib\jfr.jar;C:\work\soft\java8\jre\lib\jfxswt.jar;C:\work\soft\java8\jre\lib\jsse.jar;C:\work\soft\java8\jre\lib\management-agent.jar;C:\work\soft\java8\jre\lib\plugin.jar;C:\work\soft\java8\jre\lib\resources.jar;C:\work\soft\java8\jre\lib\rt.jar;C:\Users\yuanh\IdeaProjects\IDEAPractice\target\classes;C:\work\soft\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar;C:\work\soft\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\work\soft\repository\org\mybatis\mybatis\3.3.0\mybatis-3.3.0.jar;C:\work\soft\repository\com\alibaba\fastjson\1.2.8\fastjson-1.2.8.jar;C:\work\soft\repository\org\springframework\spring-webmvc\4.1.4.RELEASE\spring-webmvc-4.1.4.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-expression\4.1.4.RELEASE\spring-expression-4.1.4.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-web\4.1.4.RELEASE\spring-web-4.1.4.RELEASE.jar;C:\work\soft\repository\javax\servlet\jstl\1.2\jstl-1.2.jar;C:\work\soft\repository\taglibs\standard\1.1.2\standard-1.1.2.jar;C:\work\soft\repository\mysql\mysql-connector-java\5.1.38\mysql-connector-Java-5.1.38.jar;C:\work\soft\repository\asm\asm\3.3.1\asm-3.3.1.jar;C:\work\soft\repository\cglib\cglib\2.2.2\cglib-2.2.2.jar;C:\work\soft\repository\javassist\javassist\3.12.1.GA\javassist-3.12.1.GA.jar;C:\work\soft\repository\org\apache\logging\log4j\log4j-api\2.0\log4j-api-2.0.jar;C:\work\soft\repository\org\apache\logging\log4j\log4j-core\2.0-rc1\log4j-core-2.0-rc1.jar;C:\work\soft\repository\org\slf4j\slf4j-api\1.7.5\slf4j-api-1.7.5.jar;C:\work\soft\repository\org\slf4j\slf4j-log4j12\1.7.5\slf4j-log4j12-1.7.5.jar;C:\work\soft\repository\redis\clients\jedis\2.9.0\jedis-2.9.0.jar;C:\work\soft\repository\org\apache\commons\commons-pool2\2.4.2\commons-pool2-2.4.2.jar;C:\work\soft\repository\commons-codec\commons-codec\1.9\commons-codec-1.9.jar;C:\work\soft\repository\commons-io\commons-io\2.5\commons-io-2.5.jar;C:\work\soft\repository\org\apache\httpcomponents\httpclient\4.5.1\httpclient-4.5.1.jar;C:\work\soft\repository\org\apache\httpcomponents\httpcore\4.4.3\httpcore-4.4.3.jar;C:\work\soft\repository\dom4j\dom4j\1.6\dom4j-1.6.jar;C:\work\soft\repository\xml-apis\xml-apis\1.0.b2\xml-apis-1.0.b2.jar;C:\work\soft\repository\org\apache\poi\poi\3.14-beta1\poi-3.14-beta1.jar;C:\work\soft\repository\org\mongodb\mongo-java-driver\3.4.1\mongo-java-driver-3.4.1.jar;C:\work\soft\repository\org\springframework\data\spring-data-commons\1.13.4.RELEASE\spring-data-commons-1.13.4.RELEASE.jar;C:\work\soft\repository\org\slf4j\jcl-over-slf4j\1.7.25\jcl-over-slf4j-1.7.25.jar;C:\work\soft\repository\org\springframework\data\spring-data-mongodb\1.9.6.RELEASE\spring-data-mongodb-1.9.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-tx\4.2.9.RELEASE\spring-tx-4.2.9.RELEASE.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-client\3.6.2.Final\rocketmq-client-3.6.2.Final.jar;C:\work\soft\repository\org\springframework\data\spring-data-redis\1.4.0.M1\spring-data-redis-1.4.0.M1.jar;C:\work\soft\repository\org\springframework\spring-context-support\4.0.6.RELEASE\spring-context-support-4.0.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-core\4.3.6.RELEASE\spring-core-4.3.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-beans\4.2.6.RELEASE\spring-beans-4.2.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-aop\4.2.6.RELEASE\spring-aop-4.2.6.RELEASE.jar;C:\work\soft\repository\org\springframework\spring-context\4.2.6.RELEASE\spring-context-4.2.6.RELEASE.jar;C:\work\soft\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;C:\work\soft\repository\org\apache\geronimo\bundles\aspectjweaver\1.6.8_2\aspectjweaver-1.6.8_2.jar;C:\work\soft\repository\com\google\guava\guava\19.0\guava-19.0.jar;C:\work\soft\repository\org\apache\commons\commons-lang3\3.4\commons-lang3-3.4.jar;C:\work\soft\repository\joda-time\joda-time\2.9.3\joda-time-2.9.3.jar;C:\work\soft\repository\bouncycastle\bcprov-jdk14\140\bcprov-jdk14-140.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-core\2.8.8\jackson-core-2.8.8.jar;C:\work\soft\repository\com\auth0\java-jwt\3.2.0\java-jwt-3.2.0.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-databind\2.8.4\jackson-databind-2.8.4.jar;C:\work\soft\repository\com\fasterxml\jackson\core\jackson-annotations\2.8.0\jackson-annotations-2.8.0.jar;C:\work\soft\repository\org\bouncycastle\bcprov-jdk15on\1.55\bcprov-jdk15on-1.55.jar;C:\work\soft\repository\junit\junit\4.12\junit-4.12.jar;C:\work\soft\repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\work\soft\repository\io\jsonwebtoken\jjwt\0.9.0\jjwt-0.9.0.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-common\3.2.6\rocketmq-common-3.2.6.jar;C:\work\soft\repository\com\alibaba\rocketmq\rocketmq-remoting\3.2.6\rocketmq-remoting-3.2.6.jar;C:\work\soft\repository\io\netty\netty-all\4.0.25.Final\netty-all-4.0.25.Final.jar com.hisen.jars.rocketmq.Consumer
DEBUG [main] - Using SLF4J as the default logging framework
DEBUG [main] - -Dio.netty.eventLoopThreads: 8
DEBUG [main] - java.nio.Buffer.address: available
DEBUG [main] - sun.misc.Unsafe.theUnsafe: available
DEBUG [main] - sun.misc.Unsafe.copyMemory: available
DEBUG [main] - java.nio.Bits.unaligned: true
DEBUG [main] - Platform: Windows
DEBUG [main] - Java version: 8
DEBUG [main] - -Dio.netty.noUnsafe: false
DEBUG [main] - sun.misc.Unsafe: available
DEBUG [main] - -Dio.netty.noJavassist: false
DEBUG [main] - Javassist: available
DEBUG [main] - -Dio.netty.tmpdir: C:\Users\yuanh\AppData\Local\Temp (java.io.tmpdir)
DEBUG [main] - -Dio.netty.bitMode: 64 (sun.arch.data.model)
DEBUG [main] - -Dio.netty.noPreferDirect: false
DEBUG [main] - -Dio.netty.noKeySetOptimization: false
DEBUG [main] - -Dio.netty.selectorAutoRebuildThreshold: 512
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.initialSeedUniquifier: 0x83cd61627c6bb0c5 (took 23 ms)
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.allocator.type: unpooled
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.threadLocalDirectBufferSize: 65536
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.maxThreadLocalCharBufferSize: 16384
DEBUG [NettyClientSelector_1] - Generated: com.alibaba.rocketmq.shade.io.netty.util.internal.__matchers__.com.alibaba.rocketmq.remoting.protocol.RemotingCommandMatcher
DEBUG [MQClientFactoryScheduledThread] - -Dio.netty.recycler.maxCapacity.default: 262144
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.buffer.bytebuf.checkAccessible: true
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.leakDetection.level: simple
DEBUG [NettyClientWorkerThread_1] - -Dcom.alibaba.rocketmq.shade.io.netty.leakDetection.maxRecords: 4
DEBUG [NettyClientSelector_1] - java.nio.ByteBuffer.cleaner(): available
consumer
ConsumeMessageThread_3Receive new message:[MessageExt [queueId=0, storeSize=177, queueOffset=0, sysFlag=0, bornTimestamp=1513045683401, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683606, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000000, commitLogOffset=0, bodyCRC=540882364, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F4C80000, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_9Receive new message:[MessageExt [queueId=1, storeSize=177, queueOffset=2, sysFlag=0, bornTimestamp=1513045683503, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683670, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000639, commitLogOffset=1593, bodyCRC=1507953944, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F52F0009, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_7Receive new message:[MessageExt [queueId=3, storeSize=177, queueOffset=1, sysFlag=0, bornTimestamp=1513045683492, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683657, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000004D7, commitLogOffset=1239, bodyCRC=1046061087, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=2, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5240007, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_5Receive new message:[MessageExt [queueId=2, storeSize=177, queueOffset=1, sysFlag=0, bornTimestamp=1513045683488, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683652, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000426, commitLogOffset=1062, bodyCRC=1230934153, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=2, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5200006, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_10Receive new message:[MessageExt [queueId=0, storeSize=177, queueOffset=2, sysFlag=0, bornTimestamp=1513045683497, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683663, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000588, commitLogOffset=1416, bodyCRC=786873742, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696484, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5290008, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_4Receive new message:[MessageExt [queueId=1, storeSize=177, queueOffset=0, sysFlag=0, bornTimestamp=1513045683461, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683625, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000000B1, commitLogOffset=177, bodyCRC=1463420202, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5050001, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_6Receive new message:[MessageExt [queueId=0, storeSize=177, queueOffset=1, sysFlag=0, bornTimestamp=1513045683480, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683644, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000002C4, commitLogOffset=708, bodyCRC=659616165, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696484, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5180004, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_2Receive new message:[MessageExt [queueId=3, storeSize=177, queueOffset=0, sysFlag=0, bornTimestamp=1513045683475, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683640, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000213, commitLogOffset=531, bodyCRC=959734790, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=2, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5130003, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_8Receive new message:[MessageExt [queueId=1, storeSize=177, queueOffset=1, sysFlag=0, bornTimestamp=1513045683484, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683648, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000375, commitLogOffset=885, bodyCRC=1347928371, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=3, CONSUME_START_TIME=1513045696484, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F51C0005, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_1Receive new message:[MessageExt [queueId=2, storeSize=177, queueOffset=0, sysFlag=0, bornTimestamp=1513045683466, bornHost=/10.0.2.2:59989, storeTimestamp=1513045683632, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000000162, commitLogOffset=354, bodyCRC=1311986832, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=2, CONSUME_START_TIME=1513045696483, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F50A0002, WAIT=true, TAGS=TagA}, body=15]]]
ConsumeMessageThread_11Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=0, sysFlag=0, bornTimestamp=1513045683401, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686437, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000012F2, commitLogOffset=4850, bodyCRC=540882364, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000000, RETRY_TOPIC=TopicTest, MAX_OFFSET=1, CONSUME_START_TIME=1513046686276, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F4C80000, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_12Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=1, sysFlag=0, bornTimestamp=1513045683480, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686440, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001423, commitLogOffset=5155, bodyCRC=659616165, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F00000000000002C4, RETRY_TOPIC=TopicTest, MAX_OFFSET=2, CONSUME_START_TIME=1513046686279, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5180004, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_13Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=2, sysFlag=0, bornTimestamp=1513045683497, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686441, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001554, commitLogOffset=5460, bodyCRC=786873742, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000588, RETRY_TOPIC=TopicTest, MAX_OFFSET=3, CONSUME_START_TIME=1513046686282, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5290008, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_14Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=3, sysFlag=0, bornTimestamp=1513045683461, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686442, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001685, commitLogOffset=5765, bodyCRC=1463420202, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F00000000000000B1, RETRY_TOPIC=TopicTest, MAX_OFFSET=4, CONSUME_START_TIME=1513046686284, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5050001, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_15Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=4, sysFlag=0, bornTimestamp=1513045683484, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686444, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000017B6, commitLogOffset=6070, bodyCRC=1347928371, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000375, RETRY_TOPIC=TopicTest, MAX_OFFSET=5, CONSUME_START_TIME=1513046686286, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F51C0005, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_17Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=6, sysFlag=0, bornTimestamp=1513045683466, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686448, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001A18, commitLogOffset=6680, bodyCRC=1311986832, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000162, RETRY_TOPIC=TopicTest, MAX_OFFSET=7, CONSUME_START_TIME=1513046686290, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F50A0002, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_16Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=5, sysFlag=0, bornTimestamp=1513045683503, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686448, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F00000000000018E7, commitLogOffset=6375, bodyCRC=1507953944, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000639, RETRY_TOPIC=TopicTest, MAX_OFFSET=7, CONSUME_START_TIME=1513046686289, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F52F0009, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_19Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=8, sysFlag=0, bornTimestamp=1513045683475, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686453, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001C7A, commitLogOffset=7290, bodyCRC=959734790, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000213, RETRY_TOPIC=TopicTest, MAX_OFFSET=9, CONSUME_START_TIME=1513046686292, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5130003, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_18Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=7, sysFlag=0, bornTimestamp=1513045683488, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686452, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001B49, commitLogOffset=6985, bodyCRC=1230934153, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F0000000000000426, RETRY_TOPIC=TopicTest, MAX_OFFSET=9, CONSUME_START_TIME=1513046686293, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5200006, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]
ConsumeMessageThread_20Receive new message:[MessageExt [queueId=0, storeSize=305, queueOffset=9, sysFlag=0, bornTimestamp=1513045683492, bornHost=/10.0.2.2:59989, storeTimestamp=1513046686453, storeHost=/127.0.0.1:10911, msgId=7F00000100002A9F0000000000001DAB, commitLogOffset=7595, bodyCRC=1046061087, reconsumeTimes=1, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, REAL_TOPIC=%RETRY%consumer1, ORIGIN_MESSAGE_ID=7F00000100002A9F00000000000004D7, RETRY_TOPIC=TopicTest, MAX_OFFSET=10, CONSUME_START_TIME=1513046686294, UNIQ_KEY=C0A8016D09D814DAD5DC3AE4F5240007, WAIT=false, DELAY=3, TAGS=TagA, REAL_QID=0}, body=15]]]