1、安裝JDK運行環境
#cd /opt #wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u112-b15/jdk-8u112-linux-x64.tar.gz #tar zxvf jdk-8u112-linux-x64.tar.gz #vi /etc/profile 添加以下內容 export JAVA_HOME=/opt/jdk-8u112 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar #source /etc/profile #java -version java version "1.8.0_12" Java(TM) SE Runtime Environment (build 1.8.0_12-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.12-b03, mixed mode)
二、安裝配置activemq
在這里我們配置Networks of Brokers集群模式
activemq-1與activemq-2這二個broker就互為主備,發給你的消息會同步到我,發給我的消息也會同步到你,實現了HA,示意圖如下:192.168.1.104:61616<-->192.168.1.105:61626
這種HA方案的優點是占用的節點數更少(只需要2個節點),而且2個broker都可以響應消息的接收與發送,性能比zookeeper方案要好一些。
#wget #tar -zxvf apache-activemq-5.14.5-bin.tar.gz # vi conf/activemq.xml 192.168.1.104上進行配置(寫入192.168.1.105:61626) <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <value>file:${activemq.conf}/credentials.properties</value> </property> </bean> <broker xmlns="http://activemq.apache.org/schema/core" brokerName="activemq-1"> <networkConnectors> <networkConnector uri="static:(tcp://192.168.1.105:61626)"/> </networkConnectors> <persistenceAdapter> <kahaDB directory="${activemq.data}/kahadb"/> </persistenceAdapter> <transportConnectors> <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> </transportConnectors> </broker> <import resource="jetty.xml"/> </beans> 同理,在192.168.1.105上配置(寫入192.168.1.104:61616) #vi conf/activemq.xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <value>file:${activemq.conf}/credentials.properties</value> </property> </bean> <broker xmlns="http://activemq.apache.org/schema/core" brokerName="activemq-1"> <networkConnectors> <networkConnector uri="static:(tcp://192.168.1.104:61616)"/> </networkConnectors> <persistenceAdapter> <kahaDB directory="${activemq.data}/kahadb"/> </persistenceAdapter> <transportConnectors> <transportConnector name="openwire" uri="tcp://0.0.0.0:61626?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> </transportConnectors> </broker> <import resource="jetty.xml"/> </beans>
配置完后,我們分別啟動,
# bin/activemq start #tail -f data/activemq.log 查看日志 可以看到已經建立連接 2017-05-12 09:33:43,404 | INFO | Establishing network connection from vm://activemq-1?async=false&create=false to tcp://192.168.1.105:61626 | org.apache.activemq.network.DiscoveryNetworkConnector | main
訪問activemq 控制臺
http://ip:8161/admin/ (默認的賬號:admin 默認密碼:admin)
Producer與Consumer連接到activemq時,配置文件可以這么寫:
<bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory" destroy-method="stop"> <property name="connectionFactory"> <bean class="org.apache.activemq.ActiveMQConnectionFactory"> <!--broker服務的地址--> <property name="brokerURL" value="failover:(tcp://192.168.1.104:61616,tcp://192.168.1.105:61626)"/> ... </bean> </property> </bean>
這種HA方案的優點是占用的節點數更少(只需要2個節點),而且2個broker都可以響應消息的接收與發送,性能比zookeeper方案要好一些。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。