0

我有以下问题:我有一个 Web 应用程序,它调用一个包含 jms 的战争,并且每个应用程序都有自己的文件 context.xml。两个应用程序都在 Tomcat 6 上运行当 Web 应用程序调用包含 jms 的应用程序时,我收到以下错误消息:

数据库 activemq-data\localhost\KahaDB\lock 已锁定...等待 10 秒以使数据库解锁。原因:java.io.IOException:文件 'activemq-data\localhost\KahaDB\lock' 无法锁定。

如果我停止充当 jms 的应用程序服务器,错误消息就会消失。我怎么解决这个问题?

4

1 回答 1

1

您所做的是设置了两个指向磁盘上相同位置的消息代理,从而意外设置了共享存储主从。第一个应用程序中的一个代理将正常启动,而另一个将等到第一个应用程序出现故障。处理这个问题的常用方法是在 Tomcat 之外运行 ActiveMQ,并让您的应用程序连接到它。

于 2013-09-02T13:35:01.740 回答