2

我们已将 ActiveMQ 放在新的服务器上。将其配置为使用“kahadb”(我们阅读的首选)并将其设置为允许文件扩展至 2gb。

然后,当我们将负载放入队列(+- 500/秒)时,activemq 在几分钟内崩溃。

当 ActiveMQ 尝试重新启动时,它不能因为数据库已损坏:

2010-11-29 13:00:50,359 | ERROR | Failed to start ActiveMQ JMS Message Broker. Reason: 
java.io.EOFException | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain
java.io.EOFException
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:383)
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:361)
at org.apache.kahadb.page.PageFile.readPage(PageFile.java:792)
at org.apache.kahadb.page.Transaction.load(Transaction.java:411)

只有删除数据库并让它使用日志自行修复才能再次启动,几分钟后又会再次崩溃。

还有其他人有这些可靠性问题吗?

ActivemQ(5.4.1)安装在Win2003上,Java64位(1.6.0__22)

负载由 4 个使用 Stomp 运行 PHP 的网络服务器完成。

4

2 回答 2

4

这是 5.4.1 的一个已知问题。它已在 5.4.2 版本中修复并可用,现在应该随时发布。您可以从这里测试候选版本:https ://repository.apache.org/content/repositories/orgapacheactivemq-023/org/apache/activemq/apache-activemq/5.4.2/

于 2010-11-29T14:06:56.480 回答
2

我也注意到了这个问题(性能不佳,并且在多台机器的高流量下大量崩溃)。它确实在最新版本中得到修复,但我建议在生产系统上降级到 5.3.2。

于 2010-11-29T14:29:04.140 回答