• Activemq安装


     0.ActiveMQ介绍

      ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。

      特性:1.支持多种语言和协议编写客户端。如:Java、C、C++、C#、Python等

           2.完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)

                  3.消息的持久化支持Memory、KahaDB、LevelDB、Database方式

                4.设计上保证了高性能的集群,客户端-服务器,点对点

      安装包准备:

          jdk-7u79-linux-x64.tar.gz

         apache-activemq-5.11.0.redhat-621084-bin.zip  //这里采用的是Redhat版本的,开源下载地址:http://www.apache.org/dyn/closer.cgi?filename=/activemq/5.14.1/apache-activemq-5.14.1-bin.tar.gz&action=download

         mysql-connector-java-5.1.13.jar  //放到$activemq_dir/lib目录下

    1.部署结构

       

    2.JDK安装

      2.1检查系统自带的jdk版本

        [root@localhost ~]# java -version

        [root@localhost ~]# rpm -qa | grep java

     

      2.2卸载自带的JDK的信息[没有自带JDK可不执行]

          [root@localhost ~]# rpm -e java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64

        [root@localhost ~]# rpm -e java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64

     

      2.3tar.gz包安装

        进入/opt目录

        [root@localhost ~]# cd /opt/

        解压安装包

        [root@localhost ~]# tar -zxf jdk-7u79-linux-x64.tar.gz -C /opt

        [root@localhost ~]# cd /opt

        对解压的目录重命名

        [root@localhost ~]# mv jdk1.7.0_79 jdk

        改变/opt/jdk的目录权限

        [root@localhost ~]# chown -R root.root /opt/jdk

        [root@localhost ~]# ls -ld /opt/jdk

     

      2.4配置环境变量,在/etc/profile文件下添加

        [root@localhost ~]# cp -a /etc/profile /etc/profile.ori

        [root@localhost ~]# ll /etc/profile*

     

        [root@localhost ~]# echo 'export JAVA_HOME=/opt/jdk' >>  /etc/profile

        [root@localhost ~]# echo 'export CLASSPATH=$JAVA_HOME/lib' >>  /etc/profile

        [root@localhost ~]# echo 'export PATH=$JAVA_HOME/bin:$PATH' >>  /etc/profile

     

      2.5执行环境变量

        [root@localhost ~]# source /etc/profile

     

      2.6查看设置的环境变量

        [root@localhost ~]# echo $PATH

        [root@localhost ~]# echo $CLASSPATH

        [root@localhost ~]# echo $JAVA_HOME

     

      2.7查看java版本

        [root@localhost ~]# java -version

        

     

    3.ActiveMQ安装

        [root@localhost ~]#  tar -zxvf apache-activemq-5.11.0.redhat-621084-bin.zip

        [root@localhost ~]#  cd apache-activemq-5.11.0.redhat-621084

        [root@localhost ~]#  vi conf/users.properties

          将#admin=admin这行前的注释去除

        [root@localhost ~]#  vi conf/groups.properties

          将#admins=admin这行前的注释去除

        [root@localhost ~]   vi conf/activemq.xml

          1.开JMX远程管理功能:

            broker标签 添加 “useJmx="true"”

          2.managementContext修改为:

            <managementContext>

                   <managementContext createConnector="true" connectorPort="11099"/>

            </managementContext>

          3.添加MySQL持久化方式

            <persistenceAdapter> 

                <jdbcPersistenceAdapter dataDirectory="${activemq.base}/data" dataSource="#mysql-ds" lockKeepAlivePeriod="5000" > 

                   <locker>

                    <lease-database-locker lockAcquireSleepInterval="10000"/>

                   </locker>

                 </jdbcPersistenceAdapter> 

             </persistenceAdapter>

          4.添加Mysql的Bean

             <bean id="mysql-ds" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">

                <property name="driverClassName" value="com.mysql.jdbc.Driver"/>

                <property name="url" value="jdbc:mysql://192.168.1.123:3306/mq?relaxAutoCommit=true"/>

                <property name="username" value="root"/>

                <property name="password" value="123456"/>

                <property name="maxTotal" value="200"/>

                <property name="poolPreparedStatements" value="true"/>

            </bean>

          5.添加virtualTopic

           <destinationIterceptors>

              <virtualDestinationInterceptor>

                <virtualDestinations>

                  <virtualTopic name=">" prefix="Foo.*." selectorAware="false"/>

                   </virtualDestinations>

             </virtualDestinationInterceptor>

           </destinationInterceptors> 

         6.添加免密认证

          plugins标签下添加如下内容:

            <simpleAuthenticationPlugin anonymousAccessAllowed="true">

              <users> 

                       <authenticationUser username="admin" password="admin" 

                                groups="users,admins"/> 

              </users> 

            </simpleAuthenticationPlugin> 

            <authorizationPlugin> 

              <map> 

                <authorizationMap> 

                <authorizationEntries> 

                    <authorizationEntry queue=">" read="admins,anonymous" write="admins,anonymous" admin="admins,anonymous" /> 

                    <authorizationEntry topic=">" read="admins,anonymous" write="admins,anonymous" admin="admins,anonymous" /> 

                    <authorizationEntry topic="ActiveMQ.Advisory.>" read="guests,users,anonymous" write="guests,users,anonymous" admin="guests,users,anonymous"/> 

                </authorizationEntries> 

                  </authorizationMap> 

              </map> 

          </authorizationPlugin>

       [root@localhost ~]  vi /etc/hosts

          添加如下:

          主机IP    主机名(通过hostname可以得到)

  • 相关阅读:
    php tp6 踩坑(1)使用cookie助手函数 接口报500错误,但却没用错误信息问题
    php 杂项(2)--md5加密
    php tp6学习笔记(100) 正则表达式
    php 杂项(1)--单引号和双引号的区别
    pins和ports区别
    analyze&elaborate
    编译前后保存database
    DC层次化设计
    synthesis建立和保存
    DC综合过程和目标
  • 原文地址:https://www.cnblogs.com/LuisYang/p/6007038.html
Copyright © 2020-2023  润新知