spring+activity+mysql集群
2024-08-29 02:19:38
第一步:先配置好第一个activityMQ
在broker外面加入数据库的连接信息,并将mysql的mysql-connector-java.jar,即java连接mysql的jar包放入apache-activemq-5.14.1\lib目录下
第二步:复制配置好的第一个
修改端口:如果不在一台服务器上是可以不改端口号的,Activemq默认主要使用2个端口,8161(控制台使用)、61616(提供服务的端口)
(1)activemq.xml,默认是61616
(2)jetty.xml,默认是8161第三个就改为61636与8163
第三步:启动
只有第一个启动的是master才能正常使用,其他的都是slave做等待,在Master挂了之后,会自动分配一个slave为master
第四步:客户端连接
客户端连接:
pom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.version>4.3.3.RELEASE</spring.version>
<activemq>5.11.4</activemq>
<!-- <activemq>5.14.1</activemq> --> <!-- 5.12.0开始以后的版本jar包中包含了spring,与当前引入的spring冲突,导致起不来服务,如果用高版本的activitymq则须把activemq-all中的spring删除,然后再引入就可以了 -->
</properties> <dependencies>
<!-- Active MQ -->
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-all</artifactId>
<version>${activemq}</version>
</dependency>
<!-- 集成JMS -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- xbean 如<amq:connectionFactory /> -->
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-spring</artifactId>
<version>4.5</version>
</dependency> </dependencies>
ActiveMQ 的客户端只能访问Master的Broker,其他处于Slave的Broker不能访问。所以客户端连接Broker应该使用failover协议。
配置文件地址应为:
failover:(tcp://192.168.1.100:61611,tcp://192.168.1.100:61612,tcp://192.168.1.100:61613)?randomize=false
贴出spring的配置
<bean id="connectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
<property name="sessionCacheSize" value="100" />
<property name="targetConnectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<!-- MQ地址 -->
<!-- <property name="brokerURL" value="tcp://localhost:61616" /> --> <!-- 基于jdbc的集群连接 -->
<property name="brokerURL" value="failover:(tcp://192.168.1.100:61616,tcp://192.168.1.100:61626,tcp://192.168.1.100:61636)?randomize=false" /> <!-- 是否异步发送 -->
<property name="useAsyncSend" value="true" />
</bean>
</property>
</bean>
最新文章
- cmd常用命令符
- 使用before、after伪类制作三角形
- 时区 : America/Mexico_City 中文:美国中部时间(墨西哥城) 的夏令时
- 深入 char * ,char ** ,char a[ ] ,char *a[] 内核
- 上门洗车APP --- Androidclient开发 之 项目结构介绍
- BZOJ 2419: 电阻 [高斯消元 物理]
- mint-ui在vue中的使用。
- [bzoj4828][Ah/Hnoi2017]大佬
- 距离度量以及python实现(一)
- whois 查询 API
- oss对象云存储
- 《Pyhton语言程序设计》_第7章_对象和类
- A1143. Lowest Common Ancestor
- mysql限制用户只能访问指定数据库
- 将数据库从Oracle迁移到SQL Server
- history.pushState无刷新改变url
- python3用BeautifulSoup用re.compile来匹配需要抓取的href地址
- SourceTree 3.0.17如何跳过注册进行安装? — git图形化工具(一)
- Java从零开始学三十七(JAVA IO- 二进制文件读写)
- java把流抛给浏览器下载时,当下载的文件文件名为中文时,出现中文名被替换为“----------”的情况
热门文章
- python函数篇:名称空间、作用域和函数的嵌套
- LBP简单实现
- Oracle rman 脚本
- Smith-Waterman算法及其Java实现
- OC学习篇之---代理模式
- WCF发布方式介绍
- 使用kubeadm安装kubernetes1.12.1
- quote(),unquote(),urlencode()编码解码
- 详解Python中的__new__、__init__、__call__三个特殊方法(zz)
- 使用Pygame制作微信打飞机游戏PC版