ActiveMQ安装配置

ActiveMQ安装配置

官方网站:
http://activemq.apache.org


环境:
CentOS7.2
apache-activemq-5.14.1



JDK安装略

一.安装activemq
curl -sL https://mirrors.tuna.tsinghua.edu.cn/apache//activemq/5.14.1/apache-activemq-5.14.1-bin.tar.gz|tar -xvf - -C /opt --gzip
mv /opt/apache-activemq-5.14.1/ /opt/activemq


二.启动
http://activemq.apache.org/getting-started.html#GettingStarted-InstallationProcedureforUnix
/opt/activemq/bin/activemq start
提示: activemq内嵌jetty web服务,默认监听在8161端口

Using the administrative interface

  • Open the administrative interface
  • Navigate to "Queues"
  • Add a queue name and click create
  • Send test message by klicking on "Send to"
ActiveMQ安装配置


三.消息持久化
http://activemq.apache.org/persistence.html
http://activemq.apache.org/how-to-configure-a-new-database.html
http://activemq.apache.org/jdbc-master-slave.html
以mysql为例:
1.下载mysql-connector-java驱动到/opt/activemq/lib
http://dev.mysql.com/downloads/connector/j/
tar -xvf mysql-connector-java-5.1.40.tar.gz
mv mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /opt/activemq/lib/optional/
2.添加数据库配置到/opt/activemq/conf/activemq.xml
ActiveMQ安装配置

ActiveMQ安装配置

注意:官网说明文档是以dbcp1.x为例
这个地方连接池使用的是org.apache.commons.dbcp2.BasicDataSource的连接池 ,
比较新的版本,如activemq5.14.1   自身提供的是commons-dbcp2-2.1.1.jar 这个版本的jar包,
如果填写(使用)org.apache.commons.dbcp.BasicDataSource,就会报错ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource,因为org.apache.commons.dbcp.BasicDataSource 在dbcp1.x中不在dbcp2.x中。

由于commons-dbcp升级到commons-dbcp2 数据库连接池的连接配置也发生了变化(属性名变了),
版本1.x中最大活动连接数属性名称为:maxActive
版本2.x中最大活动连接数属性名称为:maxTotal
3.重启activemq
ActiveMQ安装配置
配置完成重新启动activemq,数据库就会创建三张表。
错误1:
 INFO | Database lock driver override not found for : [mysql-ab_jdbc_driver].  Will use default implementation.
 INFO | Attempting to acquire the exclusive lock to become the Master broker
 INFO | Failed to acquire lock.  Sleeping for 1000 milli(s) before trying again...
 INFO | Failed to acquire lock.  Sleeping for 1000 milli(s) before trying again...
解决:在persistenceAdapter中添加useDatabaseLock="false"
错误2:
Failure Details: Binary logging not possible.
解决:修改my.cnf,把下面几行打开。
log-bin=mysql-bin
binlog_format=mixed


负载均衡集群,请参看
http://activemq.apache.org/clustering.html

原文地址:https://www.cnblogs.com/lixuebin/p/10813990.html