您的位置:首页 > 其它

1,rocketmq 的原理与安装教程

2015-11-12 16:48 691 查看
参考文档
http://blog.csdn.net/a19881029/article/details/34446629https://github.com/alibaba/RocketMQhttp://sofar.blog.51cto.com/353572/1540874
安装包和官方的配置说明:
http://www.docin.com/p-985451416.html
原理图



角色说明

nameserver:类似zookeeper是个服务管理中心,用来记录broker的分布情况,当前状态等等

broker:实际意义上的消息队列,有master,slave两种状态

producer:消息的生产者

consumer:消息的消费者

1JDK安装

http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-x64.tar.gz

#tarxvzfjdk-7u65-linux-x64.gz-C/usr/local

#rm-fjdk-7u65-linux-x64.gz

#cd/usr/local&&ln-sjdk1.7.0_65jdk

#cd/usr/local/bin&&ln-s/usr/local/jdk/bin/java

2RocketMQ安装

https://github.com/alibaba/RocketMQ/releases

#tarxvzfalibaba-rocketmq-3.1.7.tar.gz-C/usr/local

#mvalibaba-rocketmqalibaba-rocketmq-3.1.7

#ln-salibaba-rocketmq-3.1.7rocketmq

#rmalibaba-rocketmq-3.1.7.tar.gz

#ll/usr/local





3、环境变量设置

#vim/etc/profile

exportPATH=$PATH:/usr/local/bin

exportJAVA_HOME=/usr/local/jdk

exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

exportPATH=$PATH:$JAVA_HOME/bin

exportROCKETMQ_HOME=/usr/local/rocketmq

exportPATH=$PATH::$ROCKETMQ_HOME/bin

安装包解压后的目录结构



2m-2s-async两主,两从,同步复制数据的配置

2m-2s-sync两主,两从,异步复制数据的配置

2m-noslave两主,无从的配置

启动nameserver,默认端口9876

[hadoop@hadoopbin]$nohupshmqnamesrv&
[1]17676
[hadoop@hadoopbin]$nohup:appendingoutputto“nohup.out”

[hadoop@hadoopbin]$catnohup.out
TheNameServerbootsuccess.
[hadoop@hadoopbin]$jps
17682NamesrvStartup
17800Jps


启动master默认端口号是10911[hadoop@hadoopbin]$nohupshmqbroker-n"192.168.58.163:9876"-c../conf/2m-2s-async/broker-a.properties&

[hadoop@hadoopbin]$nohupshmqbroker-n"192.168.58.163:9876"-c../conf/2m-2s-async/broker-a.properties&
[2]25493
[hadoop@hadoopbin]$nohup:appendingoutputto“nohup.out”

[hadoop@hadoopbin]$catnohup.out
loadconfigpropertiesfileOK,../conf/2m-2s-async/broker-a.properties
Thebroker[broker-a,192.168.58.163:10911]bootsuccess.andnameserveris192.168.58.163:9876
[hadoop@hadoopbin]$jps
25500BrokerStartup
25545Jps
17682NamesrvStartup


配置说明

brokerClusterName=AdpMqCluster//broker归属的集群名

brokerName=broker-a //broker的名字

brokerId=0             //0代表master>0表示slave,一个master可以挂多个slave,master和slave通过brokerName来配对

namesrvAddr=mqnameserver1:9876;192.168.1.252:9876//nameserver对应的IP和端口号

defaultTopicQueueNums=4//

autoCreateTopicEnable=true//是否允许broker自动创建Topic

autoCreateSubscriptionGroup=true//是否允许broker自动创建订阅组

listenPort=10911//监听的端口号

deleteWhen=04//删除文件时间点,默认凌晨4点

fileReservedTime=120//文件保留时间,单位小时

mapedFileSizeCommitLog=1073741824

mapedFileSizeConsumeQueue=50000000

destroyMapedFileIntervalForcibly=120000

redeleteHangedFileInterval=120000

diskMaxUsedSpaceRatio=88

storePathRootDir=/data/rocketmq/store

storePathCommitLog=/data/rocketmq/store/commitlog//commitlog的存储路径

storePathIndex=/data/rocketmq/store/indexlog//消息索引的存储路径

abortFile=/data/rocketmq/store/abortlog//abort文件的储存路径

maxMessageSize=65536

flushCommitLogLeastPages=4

flushConsumeQueueLeastPages=2

flushCommitLogThoroughInterval=10000

flushConsumeQueueThoroughInterval=60000

brokerRole=ASYNC_MASTER//broker的角色,Master,SLAVE,ASYNC_MASTER,SYNC_MASTER

flushDiskType=ASYNC_FLUSH//数据写盘方式,异步写盘,SYNC_FLUSH:同步写盘

checkTransactionMessageEnable=false

sendMessageThreadPoolNums=128

pullMessageThreadPoolNums=128


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: