Spring 群集实例上嵌入的ActiveMQ
我正在实施一个项目,其中ActiveMQ嵌入在集群实例中,模式数据库在MuleSoft 3.5.1中共享。Spring 群集实例上嵌入的ActiveMQ,spring,activemq,cluster-computing,mule-studio,Spring,Activemq,Cluster Computing,Mule Studio,我正在实施一个项目,其中ActiveMQ嵌入在集群实例中,模式数据库在MuleSoft 3.5.1中共享。 代理已经配置了Springbean <spring:beans> <spring:bean class="org.apache.activemq.xbean.BrokerFactoryBean" id="broker"> <spring:property value="classpath:testActivemq.xml
代理已经配置了Springbean
<spring:beans>
<spring:bean class="org.apache.activemq.xbean.BrokerFactoryBean"
id="broker">
<spring:property value="classpath:testActivemq.xml"
name="config" />
<spring:property value="true" name="start" />
</spring:bean>
</spring:beans>
我已经在本地mule服务器上独立测试了该系统,以模拟集群
问题是,当我将部署作为第一个代理时,它会在表上获取一个独占锁,以确保没有其他ActiveMQ代理可以同时访问数据库,但另一个代理没有完成部署过程,因此当我尝试取消部署第一个代理时,服务器将进入阻塞状态。
如何解决我的问题 您看到的是ActiveMQ内置的主从功能。要在同一个VM中启动多个代理,需要将它们的存储位置指向不同的数据库(如果使用JDBC存储)或文件系统位置(如果使用KahaDB或LevelDB) 有关如何执行此操作,请参见以下内容:
- JDBC
- 卡哈卜
- LevelDB