Apollo以ActiveMQ原型爲基礎,是一個更快、更可靠、更易於維護的消息代理工具。Apache稱Apollo爲最快、最強健的STOMP(Streaming Text Orientated Message Protocol,流文本定向消息協議)服務器. 它採用一個徹底不一樣的消息分發架構,同ActiveMQ同樣支持多種協議。如STOMP,AMQP,MQTT,Openwire,SSL和WebSockets.
一:linux下Apollo的安裝
下載apache-apollo-1.7-unix-distro.tar.gz文件放到/usr/local/src目錄下面
加壓縮文件 tar -zxvf apache-apollo-1.7-unix-distro.tar.gz -C /usr/local
二:建立broker實例
一個broker實例是一個文件夾,其中包含全部的配置文件及運行時的數據,不如日誌和消息數據。Apollo強烈建議不要把實例同安裝文件放在一塊兒。
在linux操做系統下面,建議將實例建在/var/lib/目錄下面
cd /var/lib
/usr/local/apache-apollo-1.7/bin/apollo create mybroker
建立成功後,在/var/lib/mybroker目錄下能夠看到以下目錄
bin---------------------實例的啓動腳本
etc--------------------實例的配置文件
data------------------消息持久化數據
log---------------------運行日誌
tmp-------------------臨時文件
三:Apollo監控頁面配置
vi /var/lib/mybroker/etc/apollo.xml
修改
http://127.0.0.1:61680"/>
https://127.0.0.1:61681"/>
爲
http://0.0.0.0:61680"/>
https://0.0.0.0:61681"/>
四:啓動broker實例
/var/lib/mybroker/bin/apollo-broker run
啓動成功,查看apollo進程
ps -ef|grep apollo
root 10510 1 0 12:00 pts/4 00:00:11 apollo -ea -server -Xmx1G -XX:+HeapDumpOnOutOfMemoryError -XX:-UseBiasedLocking -Dcom.sun.management.jmxremote -Dapollo.home=/usr/local/apache-apollo-1.7 -Dapollo.base=/var/lib/mybroker -classpath /usr/local/apache-apollo-1.7/lib/apollo-boot.jar org.apache.activemq.apollo.boot.Apollo /var/lib/mybroker/lib\;/usr/local/apache-apollo-1.7/lib org.apache.activemq.apollo.cli.Apollo run
五:將apollo做爲linux service啓動
ln -s /var/lib/mybroker/bin/apollo-broker-service /etc/init.d/apollo
chkconfig apollo --add
若是報錯,請修改/var/lib/mybroker/bin/apollo-broker-service 文件的最上面,添加#description描述符
#!/bin/sh
#chkconfig: 2345 55 25
#description:apollo
# ------------------------------------------------------------------------
六:Spring同Apollo經過JMS的方式集成
相似於Spring同ActiveMQ的集成方式
<bean id="connectionFactory" <="" span="" style="word-wrap: break-word;">
class="org.springframework.jms.connection.CachingConnectionFactory">
${activeMq}
admin
password
七:訪問Apollo的監控頁面http://localhost::61680/ 默認用戶名、密碼爲:admin/passwordlinux