不廢話,搞起
雙M 模式
環境
1,java-1.8
這裡有個問題,centos 安裝yum install java-1.8 是隻是安裝的java 運作環境jre,還缺少開發包
是以在編譯的時候會有問題,使用yum install yum install java-1.8.0-openjdk-devel* 這樣就全部都
安裝好了openjdk-1.8
設定環境變量
yum 安裝的預設位置是/usr/lib/jvm/java-1.8.0-openjdk.x86_64
是以
<code>export</code> <code>JAVA_HOME=</code><code>/usr/lib/jvm/java-1</code><code>.8.0-openjdk.x86_64</code>
<code>export</code> <code>PATH=$JAVA_HOME</code><code>/bin</code><code>:$PATH</code>
<code>export</code> <code>CLASSPATH=.:$JAVA_HOME</code><code>/lib/dt</code><code>.jar:$JAVA_HOME</code><code>/lib/tools</code><code>.jar</code>
source /etc/profile 即使生效
2,maven3.5.0
沒什麼可說的,直接官網下載下傳apache-maven-3.5.0-bin.tar.gz 解壓,然後加入環境變量就好了
export maven_home=/root/apache-maven-3.5.0/
export PATH=$maven_home/bin:$PATH
3,git
4,centos6.8
開始安裝并建構
<code>> git clone -b develop https:</code><code>//github</code><code>.com</code><code>/apache/incubator-rocketmq</code><code>.git</code>
<code>> </code><code>cd</code> <code>incubator-rocketmq</code>
<code>> mvn -Prelease-all -DskipTests clean </code><code>install</code> <code>-U</code>
<code>> </code><code>cd</code> <code>distribution</code><code>/target/apache-rocketmq</code>
啟動服務
<code>> </code><code>nohup</code> <code>sh bin</code><code>/mqnamesrv</code> <code>&</code>
<code> </code><code>> </code><code>tail</code> <code>-f ~</code><code>/logs/rocketmqlogs/namesrv</code><code>.log</code>
<code> </code><code>The Name Server boot success...</code>
問題來了
先是報記憶體不夠
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000006c0000000, 2147483648, 0) failed; error='Cannot allocate memory' (errno=12)
調整配置檔案
runserver.sh
# JVM Configuration
#===========================================================================================
JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=320m"
-Xms 的值一定要比 -Xmx 要小不讓,也會報錯:如下
Initial heap size set to a larger value than the maximum heap size
設定好後啟動,
tail -f ~/logs/rocketmqlogs/namesrv.log
2017-05-26 13:28:27 INFO main - serverAsyncSemaphoreValue=64
2017-05-26 13:28:27 INFO main - serverChannelMaxIdleTimeSeconds=120
2017-05-26 13:28:27 INFO main - serverSocketSndBufSize=4096
2017-05-26 13:28:27 INFO main - serverSocketRcvBufSize=4096
2017-05-26 13:28:27 INFO main - serverPooledByteBufAllocatorEnable=true
2017-05-26 13:28:27 INFO main - useEpollNativeSelector=false
2017-05-26 13:28:28 INFO main - The Name Server boot success. serializeType=JSON
2017-05-26 13:28:28 INFO NettyEventExecutor - NettyEventExecutor service started
2017-05-26 13:29:28 INFO NSScheduledThread1 - --------------------------------------------------------
2017-05-26 13:29:28 INFO NSScheduledThread1 - configTable SIZE: 0
小總結:機器記憶體小真是頭疼,小爺我的機器是700多M,這配置預設都是4G的。。。不過權當生産故障處理了,也算在測試的時候遇到是實戰問題,記憶體不足,記憶體不足!
本文轉自wks9751CTO部落格,原文連結:http://blog.51cto.com/wks97/1929714 ,如需轉載請自行聯系原作者