Linux apache-activemq安装及配置

2024-09-06 10:08

本文主要是介绍Linux apache-activemq安装及配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.  apache-activemq安装

  备注:apache-activemq安装时JDK必须在1.5以,否则不能访问。

(1)从官网下载Activemq Linux包http://activemq.apache.org/download.html.这儿我下载的是 apache-activemq-5.4.3-bin.tar.gz

(2)解压包

tar zxvf apache-activemq-5.4.3-bin.tar.gz

(3)进入解压后的文件夹apache-activemq-5.4.3-bin中的bin目录

cd  apache-activemq-5.4.3-bin/bin目录

(4)在启动前先配置activemq。在bin目录下执行

./activemq  setup  /root/.activemqrc

(5)提高activemq的权限

chmod 600 /root/.activemqrc

 

(6)启动activemq

./activemq  start

 (7)最后http访问出现以下代表成功

    http://IP:61616/若出现下边内容则说明安装成功(备注在启动前主要要开启端口61616)

 

 

 

2.  apache-activemq自启动设置

                   修改启动脚本/opt/activemq/bin/activemq,将开头处改为:

#!/bin/sh

### BEGIN INIT INFO

# Provides:             activemq

# Required-Start:       $remote_fs $syslog

# Required-Stop:        $remote_fs $syslog

# Default-Start:        2 3 4 5

# Default-Stop:         0 6

# Short-Description:    ActiveMQ server

### END INIT INFO

 

 

         然后创建软链接:

# ln -s /opt/activemq/bin/activemq /etc/init.d/

 

         然后进入系统开机自启动配置文件rc.local的编辑界面

vi  /etc/rc.local

 

         然后插入启动语句:

bash /etc/init.d/activemq start

         最后保存

 

 

3.  apache-activemq调优配置

         1.    JVM内存设置:

                   注意不要修改%ACTIVEMQ_HOME%/bin目录下activemq文件, 要改 /root/.activemqrc 文件(如果没有找到.activemqrc文件,运行一次activemq就自动生成了),找到文件中的ACTIVEMQ_OPTS_MEMORY选项,设置为:

                            ACTIVEMQ_OPTS_MEMORY="-Xms2048M -Xmx2048M"

         注意不要多余的空格。

 

         2.  activemq参数配置,打开%ACTIVEMQ_HOME%/confg目录下的activemq.xml文件,进行如下修改(红色部分为修改的内容)。

<!--

    Licensed to the Apache Software Foundation (ASF) under one or more

    contributor license agreements.  See the NOTICE file distributed with

    this work for additional information regarding copyright ownership.

    The ASF licenses this file to You under the Apache License, Version 2.0

    (the "License"); you may not use this file except in compliance with

    the License.  You may obtain a copy of the License at

  

    http://www.apache.org/licenses/LICENSE-2.0

  

    Unless required by applicable law or agreed to in writing, software

    distributed under the License is distributed on an "AS IS" BASIS,

    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

    See the License for the specific language governing permissions and

    limitations under the License.

-->

<!-- START SNIPPET: example -->

<beans

  xmlns="http://www.springframework.org/schema/beans"

  xmlns:amq="http://activemq.apache.org/schema/core"

  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-2.0.xsd

  http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">

 

    <!-- Allows us to use system properties as variables in this configuration file -->

    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

        <property name="locations">

            <value>file:${activemq.base}/conf/credentials.properties</value>

        </property>     

    </bean>

 

    <!--

        The <broker> element is used to configure the ActiveMQ broker.

    -->

    <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data" destroyApplicationContextOnStop="true">

 

        <!--

                            For better performances use VM cursor and small memory limit.

                            For more information, see:

           

            http://activemq.apache.org/message-cursors.html

           

            Also, if your producer is "hanging", it's probably due to producer flow control.

            For more information, see:

            http://activemq.apache.org/producer-flow-control.html

        -->

             

        <destinationPolicy>

            <policyMap>

              <policyEntries>

                <policyEntry topic=">" producerFlowControl="true" memoryLimit="200mb">

                  <pendingSubscriberPolicy>

                    <vmCursor />

                  </pendingSubscriberPolicy>

                </policyEntry>

                <policyEntry queue=">" producerFlowControl="true" memoryLimit="200mb">

                </policyEntry>

              </policyEntries>

            </policyMap>

        </destinationPolicy>

 

 

        <!--

            The managementContext is used to configure how ActiveMQ is exposed in

            JMX. By default, ActiveMQ uses the MBean server that is started by

            the JVM. For more information, see:

           

            http://activemq.apache.org/jmx.html

        -->

        <managementContext>

            <managementContext createConnector="false"/>

        </managementContext>

 

        <!--

            Configure message persistence for the broker. The default persistence

            mechanism is the KahaDB store (identified by the kahaDB tag).

            For more information, see:

           

            http://activemq.apache.org/persistence.html

        -->

        <persistenceAdapter>

            <kahaDB directory="${activemq.base}/data/kahadb"/>

        </persistenceAdapter>

       

       

          <!--

            The systemUsage controls the maximum amount of space the broker will

            use before slowing down producers. For more information, see:

           

            http://activemq.apache.org/producer-flow-control.html

           -->

        <systemUsage>

            <systemUsage>

                <memoryUsage>

                    <memoryUsage limit="100 mb"/>  /修改/

                </memoryUsage>

                <storeUsage>

                    <storeUsage limit="4 gb"/>      ///修改添加//

                </storeUsage>

                <tempUsage>

                    <tempUsage limit="600 mb"/>   //修改添加///

                </tempUsage>

            </systemUsage>

        </systemUsage>

                   <!-- -->

 

        <!--

            The transport connectors expose ActiveMQ over a given protocol to

            clients and other brokers. For more information, see:

           

            http://activemq.apache.org/configuring-transports.html

        -->

        <transportConnectors>

            <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>

        </transportConnectors>

 

    </broker>

 

    <!--

        Enable web consoles, REST and Ajax APIs and demos

       

        Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details

    -->

    <import resource="jetty.xml"/>

   

</beans>

<!-- END SNIPPET: example -->


查看开机启动项

ps -ef |grep java

这篇关于Linux apache-activemq安装及配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1141723

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

Linux挂载linux/Windows共享目录实现方式

《Linux挂载linux/Windows共享目录实现方式》:本文主要介绍Linux挂载linux/Windows共享目录实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录文件共享协议linux环境作为服务端(NFS)在服务器端安装 NFS创建要共享的目录修改 NFS 配

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信