RocketMQ环境搭建
1 源码下载
wget http://mirror.bit.edu.cn/apache/rocketmq/4.2.0/rocketmq-all-4.2.0-bin-release.zip
unzip rocketmq-all-4.2.0-bin-release.zip
2 启动namesrv
cd /Users/rocketmq/bin
nohup sh mqnamesrv&
结果出错:
cat nohup.out
OpenJDK 64-Bit Server VM warning: UseCMSCompactAtFullCollection is deprecated and will likely be removed in a future release.
java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at io.netty.channel.socket.nio.NioServerSocketChannel.doBind(NioServerSocketChannel.java:127)
at io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:501)
at io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1218)
at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:506)
at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:491)
at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:965)
at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:210)
at io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:353)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:408)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:455)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:140)
at java.lang.Thread.run(Thread.java:852)
ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! !!
ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! !!
ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! !!
ERROR: Please set the JAVA_HOME variable in your environment, We need java(x64)! !!
修改runserver.sh 和 runbroker.sh 文件,将 [ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/user/java 改为 [ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
再执行命令,显示
The Name Server boot success. serializeType=JSON
说明namesrv成功了
3 启动broker
nohup sh mqbroker -n 11.162.141.67:9876&
看nohup.out报错
/Users/rocketmq/bin/runbroker.sh: line 62: 204749 Killed $JAVA ${JAVA_OPT} $@
说明脚本执行有问题,比较脚本runbroker.sh和runserver.sh,发现这两个文件的配置有不一样
#===========================================================================================
# JVM Configuration
#===========================================================================================
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
JAVA_OPT="${JAVA_OPT} -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8 -XX:-UseParNewGC"
JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:/dev/shm/rmq_srv_gc.log -XX:+PrintGCDetails"
JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow"
JAVA_OPT="${JAVA_OPT} -XX:-UseLargePages"
JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${JAVA_HOME}/jre/lib/ext:${BASE_DIR}/lib"
#JAVA_OPT="${JAVA_OPT} -Xdebug -Xrunjdwp:transport=dt_socket,address=9555,server=y,suspend=n"
JAVA_OPT="${JAVA_OPT} ${JAVA_OPT_EXT}"
JAVA_OPT="${JAVA_OPT} -cp ${CLASSPATH}"
但是runserver.sh脚本能执行成功,于是将runserver.sh的配置替换runbroker.sh,再执行命令,成功了。
netstat -ano | grep "11.162.141.67:9876"
tcp 0 0 11.162.141.67:50772 11.162.141.67:9876 ESTABLISHED off (0.00/0/0)
tcp 0 0 11.162.141.67:9876 11.162.141.67:50772 ESTABLISHED off (0.00/0/0)
目前都是在一台机器上,既作为namesrv又作为broker。
4 消息生产
package org.apache.rocketmq.client.producer; import java.io.UnsupportedEncodingException;
import java.util.List; import org.apache.rocketmq.client.exception.MQBrokerException;
import org.apache.rocketmq.client.exception.MQClientException;
import org.apache.rocketmq.common.MixAll;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.common.message.MessageQueue;
import org.apache.rocketmq.remoting.common.RemotingHelper;
import org.apache.rocketmq.remoting.exception.RemotingException; /**
* Created by test on 17/6/14.
*/
public class Producer {
public static void main(String[] args) throws UnsupportedEncodingException {
try {
System.setProperty(MixAll.NAMESRV_ADDR_PROPERTY, "11.162.141.67:9876");
MQProducer producer = new DefaultMQProducer("rocketmq-study"); producer.start(); String[] tags = new String[]{"TagA", "TagB", "TagC", "TagD", "TagE"}; for (int i = 0; i < 100; i++) { int orderId = i % 10;
Message msg =
new Message("TopicTestjjj", tags[i % tags.length], "KEY" + i,
("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET)); SendResult sendResult = producer.send(msg, new MessageQueueSelector() {
@Override
public MessageQueue select(List<MessageQueue> mqs, Message msg, Object arg) {
Integer id = (Integer) arg;
int index = id % mqs.size();
return mqs.get(index);
}
}, orderId); System.out.println(sendResult);
} producer.shutdown();
} catch (MQClientException e) {
e.printStackTrace();
} catch (RemotingException e) {
e.printStackTrace();
} catch (MQBrokerException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
执行结果:
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5200000, offsetMsgId=0BA28D4300002A9F00000000000005F8, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=2]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5640001, offsetMsgId=0BA28D4300002A9F00000000000006B7, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=2]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5720002, offsetMsgId=0BA28D4300002A9F0000000000000776, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=2]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5800003, offsetMsgId=0BA28D4300002A9F0000000000000835, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=2]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F58E0004, offsetMsgId=0BA28D4300002A9F00000000000008F4, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=3]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F59D0005, offsetMsgId=0BA28D4300002A9F00000000000009B3, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=3]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5AB0006, offsetMsgId=0BA28D4300002A9F0000000000000A72, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=3]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5B90007, offsetMsgId=0BA28D4300002A9F0000000000000B31, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=3]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5C90008, offsetMsgId=0BA28D4300002A9F0000000000000BF0, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=4]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5DA0009, offsetMsgId=0BA28D4300002A9F0000000000000CAF, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=4]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5E8000A, offsetMsgId=0BA28D4300002A9F0000000000000D6E, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=5]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F5F7000B, offsetMsgId=0BA28D4300002A9F0000000000000E2F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=5]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F606000C, offsetMsgId=0BA28D4300002A9F0000000000000EF0, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=4]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F614000D, offsetMsgId=0BA28D4300002A9F0000000000000FB1, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=4]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F627000E, offsetMsgId=0BA28D4300002A9F0000000000001072, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=6]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F635000F, offsetMsgId=0BA28D4300002A9F0000000000001133, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=6]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6460010, offsetMsgId=0BA28D4300002A9F00000000000011F4, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=5]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6570011, offsetMsgId=0BA28D4300002A9F00000000000012B5, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=5]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6680012, offsetMsgId=0BA28D4300002A9F0000000000001376, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=7]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6770013, offsetMsgId=0BA28D4300002A9F0000000000001437, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=7]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6860014, offsetMsgId=0BA28D4300002A9F00000000000014F8, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=8]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6940015, offsetMsgId=0BA28D4300002A9F00000000000015B9, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=8]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6A20016, offsetMsgId=0BA28D4300002A9F000000000000167A, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=6]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6B20017, offsetMsgId=0BA28D4300002A9F000000000000173B, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=6]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6BF0018, offsetMsgId=0BA28D4300002A9F00000000000017FC, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=9]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6CD0019, offsetMsgId=0BA28D4300002A9F00000000000018BD, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=9]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6DB001A, offsetMsgId=0BA28D4300002A9F000000000000197E, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=7]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6E9001B, offsetMsgId=0BA28D4300002A9F0000000000001A3F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=7]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F6F7001C, offsetMsgId=0BA28D4300002A9F0000000000001B00, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=10]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F705001D, offsetMsgId=0BA28D4300002A9F0000000000001BC1, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=10]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F713001E, offsetMsgId=0BA28D4300002A9F0000000000001C82, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=11]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F722001F, offsetMsgId=0BA28D4300002A9F0000000000001D43, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=11]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7310020, offsetMsgId=0BA28D4300002A9F0000000000001E04, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=8]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F73F0021, offsetMsgId=0BA28D4300002A9F0000000000001EC5, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=8]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F74E0022, offsetMsgId=0BA28D4300002A9F0000000000001F86, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=12]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F75B0023, offsetMsgId=0BA28D4300002A9F0000000000002047, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=12]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7690024, offsetMsgId=0BA28D4300002A9F0000000000002108, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=9]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7770025, offsetMsgId=0BA28D4300002A9F00000000000021C9, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=9]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7850026, offsetMsgId=0BA28D4300002A9F000000000000228A, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=13]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7940027, offsetMsgId=0BA28D4300002A9F000000000000234B, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=13]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7A20028, offsetMsgId=0BA28D4300002A9F000000000000240C, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=14]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7B00029, offsetMsgId=0BA28D4300002A9F00000000000024CD, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=14]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7BD002A, offsetMsgId=0BA28D4300002A9F000000000000258E, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=10]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7CD002B, offsetMsgId=0BA28D4300002A9F000000000000264F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=10]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7DB002C, offsetMsgId=0BA28D4300002A9F0000000000002710, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=15]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7E9002D, offsetMsgId=0BA28D4300002A9F00000000000027D1, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=15]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F7F7002E, offsetMsgId=0BA28D4300002A9F0000000000002892, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=11]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F806002F, offsetMsgId=0BA28D4300002A9F0000000000002953, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=11]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8140030, offsetMsgId=0BA28D4300002A9F0000000000002A14, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=16]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8230031, offsetMsgId=0BA28D4300002A9F0000000000002AD5, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=16]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8390032, offsetMsgId=0BA28D4300002A9F0000000000002B96, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=17]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8480033, offsetMsgId=0BA28D4300002A9F0000000000002C57, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=17]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8560034, offsetMsgId=0BA28D4300002A9F0000000000002D18, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=12]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8640035, offsetMsgId=0BA28D4300002A9F0000000000002DD9, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=12]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8720036, offsetMsgId=0BA28D4300002A9F0000000000002E9A, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=18]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F87F0037, offsetMsgId=0BA28D4300002A9F0000000000002F5B, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=18]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F88C0038, offsetMsgId=0BA28D4300002A9F000000000000301C, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=13]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F89C0039, offsetMsgId=0BA28D4300002A9F00000000000030DD, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=13]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8A9003A, offsetMsgId=0BA28D4300002A9F000000000000319E, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=19]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8B7003B, offsetMsgId=0BA28D4300002A9F000000000000325F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=19]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8C5003C, offsetMsgId=0BA28D4300002A9F0000000000003320, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=20]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8D2003D, offsetMsgId=0BA28D4300002A9F00000000000033E1, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=20]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8DF003E, offsetMsgId=0BA28D4300002A9F00000000000034A2, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=14]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8EE003F, offsetMsgId=0BA28D4300002A9F0000000000003563, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=14]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F8FB0040, offsetMsgId=0BA28D4300002A9F0000000000003624, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=21]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9090041, offsetMsgId=0BA28D4300002A9F00000000000036E5, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=21]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9180042, offsetMsgId=0BA28D4300002A9F00000000000037A6, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=15]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9260043, offsetMsgId=0BA28D4300002A9F0000000000003867, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=15]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9340044, offsetMsgId=0BA28D4300002A9F0000000000003928, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=22]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9420045, offsetMsgId=0BA28D4300002A9F00000000000039E9, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=22]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F94F0046, offsetMsgId=0BA28D4300002A9F0000000000003AAA, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=23]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F95D0047, offsetMsgId=0BA28D4300002A9F0000000000003B6B, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=23]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F96A0048, offsetMsgId=0BA28D4300002A9F0000000000003C2C, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=16]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9770049, offsetMsgId=0BA28D4300002A9F0000000000003CED, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=16]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F985004A, offsetMsgId=0BA28D4300002A9F0000000000003DAE, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=24]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F993004B, offsetMsgId=0BA28D4300002A9F0000000000003E6F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=24]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9A1004C, offsetMsgId=0BA28D4300002A9F0000000000003F30, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=17]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9AF004D, offsetMsgId=0BA28D4300002A9F0000000000003FF1, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=17]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9BC004E, offsetMsgId=0BA28D4300002A9F00000000000040B2, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=25]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9CB004F, offsetMsgId=0BA28D4300002A9F0000000000004173, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=25]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9D80050, offsetMsgId=0BA28D4300002A9F0000000000004234, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=26]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9E60051, offsetMsgId=0BA28D4300002A9F00000000000042F5, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=26]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70F9F50052, offsetMsgId=0BA28D4300002A9F00000000000043B6, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=18]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA050053, offsetMsgId=0BA28D4300002A9F0000000000004477, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=18]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA130054, offsetMsgId=0BA28D4300002A9F0000000000004538, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=27]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA200055, offsetMsgId=0BA28D4300002A9F00000000000045F9, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=27]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA2E0056, offsetMsgId=0BA28D4300002A9F00000000000046BA, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=19]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA3B0057, offsetMsgId=0BA28D4300002A9F000000000000477B, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=19]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA480058, offsetMsgId=0BA28D4300002A9F000000000000483C, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=28]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA570059, offsetMsgId=0BA28D4300002A9F00000000000048FD, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=28]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA65005A, offsetMsgId=0BA28D4300002A9F00000000000049BE, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=29]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA77005B, offsetMsgId=0BA28D4300002A9F0000000000004A7F, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=29]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FA8D005C, offsetMsgId=0BA28D4300002A9F0000000000004B40, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=20]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FAAA005D, offsetMsgId=0BA28D4300002A9F0000000000004C01, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=20]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FABE005E, offsetMsgId=0BA28D4300002A9F0000000000004CC2, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=30]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FACD005F, offsetMsgId=0BA28D4300002A9F0000000000004D83, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=30]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FAE00060, offsetMsgId=0BA28D4300002A9F0000000000004E44, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=2], queueOffset=21]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FAF20061, offsetMsgId=0BA28D4300002A9F0000000000004F05, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=3], queueOffset=21]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FB010062, offsetMsgId=0BA28D4300002A9F0000000000004FC6, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=0], queueOffset=31]
SendResult [sendStatus=SEND_OK, msgId=1E065BDA6AEB3764951D2E70FB140063, offsetMsgId=0BA28D4300002A9F0000000000005087, messageQueue=MessageQueue [topic=TopicTestjjj, brokerName=taobaodaily011162141067.et15sqa, queueId=1], queueOffset=31]
ConsumeQueue的存储位置
默认的存储位置:${user.home} \store\consumequeue${topicName}${queueId}${fileName}
可以修改:配置文件的
storePathRootDir=/home/haieradmin/mqstore/rocketmqstore
storePathCommitLog=/home/haieradmin/mqstore/rocketmqstore/commitlog
这两个参数。
登录机器,看/home/users/store目录
abort checkpoint commitlog config consumequeue index lock nohup.out
目录树
├── commitlog
│ └── 00000000000000000000
│ └── 00000000001073741824
├── consumequeue
│ ├── TopicTestjjj
│ │ ├── 0
│ │ │ └── 00000000000000000000
│ │ ├── 1
│ │ │ └── 00000000000000000000
│ │ ├── 2
│ │ │ └── 00000000000000000000
│ │ └── 3
│ │ └── 00000000000000000000
可以看到commitLog下面刚好两个1G的文件,分别以偏移量作为文件名。
看一下文件内容:
$strings 00000000000000000000
Hello RocketMQ 0
TopicTestjjj
HKEYS
KEY0
UNIQ_KEY
1E065BDA6AB118B4AAC22BAB0AEA0000
WAIT
true
TAGS
TagA
Hello RocketMQ 1
TopicTestjjj
HKEYS
KEY1
UNIQ_KEY
1E065BDA6AB118B4AAC22BAB2F800001
WAIT
true
TAGS
TagB
Hello RocketMQ 2
TopicTestjjj
HKEYS
KEY2
UNIQ_KEY
1E065BDA6AB118B4AAC22BAB2F8E0002
WAIT
true
TAGS
TagC
Hello RocketMQ 3
TopicTestjjj
HKEYS
KEY3
UNIQ_KEY
顺便说一下,消息队列文件名规则:
文件默认存储大小1G。
文件名以已有存储容量依次递增,类似如下:
00000000000000000000
00000000001073741824
00000000002147483648
。。。
这是个二进制文件,打开看一下。
$od -Ax -tx1 00000000000000000000
000000 00 00 00 00 00 00 00 00 00 00 00 bf 00 00 00 00
000010 00 27 a8 07 00 00 00 00 00 00 02 fc 00 00 00 bf
000020 00 00 00 00 00 27 a8 0b 00 00 00 00 00 00 05 f8
000030 00 00 00 bf 00 00 00 00 00 27 a8 07 00 00 00 00
000040 00 00 08 f4 00 00 00 bf 00 00 00 00 00 27 a8 0b
000050 00 00 00 00 00 00 0b f0 00 00 00 bf 00 00 00 00
000060 00 27 a8 0a 00 00 00 00 00 00 0d 6e 00 00 00 c1
000070 00 00 00 00 00 27 a8 07 00 00 00 00 00 00 10 72
000080 00 00 00 c1 00 00 00 00 00 27 a8 0b 00 00 00 00
000090 00 00 13 76 00 00 00 c1 00 00 00 00 00 27 a8 0a
0000a0 00 00 00 00 00 00 14 f8 00 00 00 c1 00 00 00 00
0000b0 00 27 a8 07 00 00 00 00 00 00 17 fc 00 00 00 c1
0000c0 00 00 00 00 00 27 a8 0b 00 00 00 00 00 00 1b 00
0000d0 00 00 00 c1 00 00 00 00 00 27 a8 0a 00 00 00 00
0000e0 00 00 1c 82 00 00 00 c1 00 00 00 00 00 27 a8 07
0000f0 00 00 00 00 00 00 1f 86 00 00 00 c1 00 00 00 00
000100 00 27 a8 0b 00 00 00 00 00 00 22 8a 00 00 00 c1
000110 00 00 00 00 00 27 a8 0a 00 00 00 00 00 00 24 0c
000120 00 00 00 c1 00 00 00 00 00 27 a8 07 00 00 00 00
000130 00 00 27 10 00 00 00 c1 00 00 00 00 00 27 a8 0b
000140 00 00 00 00 00 00 2a 14 00 00 00 c1 00 00 00 00
000150 00 27 a8 0a 00 00 00 00 00 00 2b 96 00 00 00 c1
000160 00 00 00 00 00 27 a8 07 00 00 00 00 00 00 2e 9a
000170 00 00 00 c1 00 00 00 00 00 27 a8 0b 00 00 00 00
000180 00 00 31 9e 00 00 00 c1 00 00 00 00 00 27 a8 0a
000190 00 00 00 00 00 00 33 20 00 00 00 c1 00 00 00 00
0001a0 00 27 a8 07 00 00 00 00 00 00 36 24 00 00 00 c1
0001b0 00 00 00 00 00 27 a8 0b 00 00 00 00 00 00 39 28
0001c0 00 00 00 c1 00 00 00 00 00 27 a8 0a 00 00 00 00
0001d0 00 00 3a aa 00 00 00 c1 00 00 00 00 00 27 a8 07
0001e0 00 00 00 00 00 00 3d ae 00 00 00 c1 00 00 00 00
0001f0 00 27 a8 0b 00 00 00 00 00 00 40 b2 00 00 00 c1
000200 00 00 00 00 00 27 a8 0a 00 00 00 00 00 00 42 34
000210 00 00 00 c1 00 00 00 00 00 27 a8 07 00 00 00 00
000220 00 00 45 38 00 00 00 c1 00 00 00 00 00 27 a8 0b
000230 00 00 00 00 00 00 48 3c 00 00 00 c1 00 00 00 00
000240 00 27 a8 0a 00 00 00 00 00 00 49 be 00 00 00 c1
000250 00 00 00 00 00 27 a8 07 00 00 00 00 00 00 4c c2
000260 00 00 00 c1 00 00 00 00 00 27 a8 0b 00 00 00 00
000270 00 00 4f c6 00 00 00 c1 00 00 00 00 00 27 a8 0a
000280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
*
5b8d80

ConsumeQueue中每个消息时20Byte长。结构为

困,明天继续。
RocketMQ环境搭建的更多相关文章
- RocketMQ环境搭建(双master双slave模式)
1.环境准备: 准备四台主机(我这里用CentOSx64) 主机 角色 broker 192.168.192.130 Master1 BrokerServerA 192.168.192.131 Mas ...
- RocketMQ环境搭建(双master模式)
介绍: 多Master模式,一个集群无Slave,全是Master,例如2个Master或者3个Master. 优点:配置简单,单个Master宕机或重启维护对应用无影响,在磁盘配置为RAID10时, ...
- rocketmq 集群环境搭建配置
rocketmq环境搭建配置: 一. 搭建三主集群,环境:centos-64 7.4 + RocketMQ-4.3.2 Master01: 192.168.102.68 Master02: 192 ...
- RocketMQ在Windows平台下环境搭建
一. 环境搭建 需要jdk1.6(以上) 64bit, maven, eclipse 二. RocketMQ项目下载 项目地址:https://github.com/alibaba/RocketM ...
- RocketMQ在linux平台下环境搭建
RocketMQ在linux下部署运行和window类似,只不过启动namesrv和broker是通过mqnamesrv.sh 和 mqbroker.sh来启动的. 一. 环境搭建 需要jdk1.6 ...
- rocketmq那些事儿之本地调试环境搭建
上一篇文章中我们已经介绍过rocketmq的集群环境搭建,然而在源码的学习中我们还需要进行本地的调试和问题的定位查找,毕竟还是在本地方便些,今天就说一说如何进行源码的本地调试 下载编译 对于rocke ...
- RocketMQ系列(二)环境搭建
RocketMQ的基本概念在上一篇中给大家介绍了,这一节将给大家介绍环境搭建.RocketMQ中最基础的就是NameServer,我们先来看看它是怎么搭建的. NameServer RocketMQ要 ...
- RocketMQ(1)---架构原理及环境搭建
一.架构简述 RocketMQ阿里开源的一个分布式消息传递和流媒体平台,具有低延迟,高性能和可靠性, 万亿级容量和灵活的可伸缩性.跟其它中间件相比,RocketMQ的特点是纯JAVA实现,在发生宕机和 ...
- Netty环境搭建 (源码死磕2)
[正文]netty源码 死磕2: 环境搭建 本小节目录 1. Netty为什么火得屌炸天? 1.1. Netty是什么? 1.2. Netty火到什么程度呢? 1.3. Netty为什么这么火? 2 ...
随机推荐
- Windows中几个内存相当的指标
以下几个内存大小相当: IS:虚拟内存任务管理器:提交内存进程对象上的:PrivateMemorySize64,性能计数器:Process\Private Bytes
- Git服务器配置及本地克隆提交、服务器获取
1.服务器Git安装配置 相关链接 相关链接 注意ssh-keygen .修改权限 权限: 相关链接 2.本地获取 git clone name@ip:服务器项目位置 相关链接 3.创建 ...
- css文本属性用法总结
稍稍总结了下css文本的一些属性用法,自己忘记的时候也可以用来查查,不用去查网站那么麻烦. 下面是部分总结,也希望对其他人有用 文本修饰 (1)text-decoration: 文本修饰(横线) 4 ...
- 使用wxpy自动发送微信消息(加强版)
通过使用wxpy自动发送微信消息后,笔者又加强了发送消息,堪称消息爆炸式发送 目前设置的为10秒发送一次,发送9次,每次发送10条内容 import requests import wxpy from ...
- tkinter中frame布局控件
frame控件 frame控件是将窗口分成好几个小模块,然后每个小模块中添加控件. 也就是将窗口合理的布局 由于和其他控件的操作基本一致,就不做注释了 import tkinter wuya = tk ...
- Column Index out of range, 2 > 1 列索引的范围,2 > 1。
Column Index out of range, 2 > 1 列索引的范围,2 > 1.这个问题是进行数据库查询的时候出现的. 因为查询sql语句时 只查询了 name 然后whil ...
- python TCP socket套接字编程以及注意事项
TCPServer.py #coding:utf-8 import socket #s 等待链接 #c 实时通讯 s = socket.socket(socket.AF_INET,socket.SOC ...
- Spring boot 之 dubbo 无xml 简单入门
Dubbo简介 Dubbo框架设计一共划分了10个层,而最上面的Service层是留给实际想要使用Dubbo开发分布式服务的开发者实现业务逻辑的接口层.图中左边淡蓝背景的为服务消费方使用的接口,右边淡 ...
- 17秋 软件工程 团队第五次作业 Alpha Scrum5
17秋 软件工程 团队第五次作业 Alpha Scrum5 今日完成的任务 世强:消息通知管理列表页界面编写,下拉加载效果: 港晨:编写登录界面: 树民: 伟航:学习了flask_restful框架的 ...
- APC | Memcache等缓存key冲突的解决的方法
版权声明:https://github.com/wusuopubupt https://blog.csdn.net/wusuopuBUPT/article/details/24397109 apc.m ...