我们已将 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 的网络服务器完成。