【发布时间】:2012-09-28 00:26:14
【问题描述】:
在我的开发机器上本地启动/停止 ActiveMQ (5.6) 我只是分别运行 ./activemq start 和 ./activemq stop。
在我们的 QA 机器上,我们将其作为服务安装并分别运行 service activemq start 和 service activemq stop。
我刚去弹了QA机,发了service activemq stop,然后service activemq start重启了。
我看到一个正在创建的进程 ID,如果我运行 ps -aef | grep activemq,我会看到 ActiveMQ 服务器的活生生的进程。
但是,如果我转到 http://<qa-server>:8161/admin,我会收到您在服务器关闭时看到的典型错误:
Firefox 无法与位于 :8161 的服务器建立连接。
编辑:我现在尝试了 ./active start 和 service activemq start 方法,都产生了同样的问题:我看到一个进程正在创建,但在 web 管理工具中什么都没有。
我检查了 ActiveMQ 的主目录,没有看到任何类型的 logs/ 目录,所以我什至不确定从哪里开始调试问题。
要么 AMQ 未重新启动,要么其 Web 管理应用程序未重新启动或正常运行;无论哪种方式,我都不知道从哪里开始。提前致谢!
编辑:
我在data/activemq.log 中看到以下错误:
2012-10-07 11:37:14,501 |信息 |数据库 /qa-server/kahadb/lock 已锁定...等待 10 秒以使数据库解锁。原因:java.io.IOException:无法锁定文件“/qa-server/kahadb/lock”。 | org.apache.activemq.store.kahadb.MessageDatabase |主要的 2012-10-07 11:37:24,504 |信息 |数据库 /qa-server/kahadb/lock 已锁定...等待 10 秒以使数据库解锁。原因:java.io.IOException:无法锁定文件“/qa-server/kahadb/lock”。 | org.apache.activemq.store.kahadb.MessageDatabase |主要
【问题讨论】:
-
看起来 AMQ 没有重新启动。停止前和启动后检查PID。还是一样?终止进程。
-
再次感谢@quartzde - 请在 Bobby Fisher 的回答下方查看我的评论。我验证了启动ActiveMQ后PID存在,停止后验证PID不再存在。此外,我已经验证我没有多个 PID 试图相互竞争,例如多个 AMQ 实例因为我发布的所有启动/停止等而相互竞争。
-
也许停止没有释放锁。停止 AMQ,清理
data/,启动 AMQ。 -
谢谢,但是当你说“清理
data/这让我有点困惑。data/是它的日志目录(在这种情况下,为什么擦除日志文件会释放锁)?或者你的意思是“清理data/”是什么意思?再次感谢您迄今为止的所有帮助,再次感谢 +1。 -
另外,我找到了this 文章,但这对我来说意义不大。我知道我们使用 NFS,所以也许有一个“主”实例之类的?
标签: java jetty activemq restart