在工作中遇到使用activemq宕机的问题,各位大神希望能给点建议
报错如下:
主要信息是:Failed to update database lock:java.sql.SQLRecoverableException:No more data to read from socket | org.apache.activemq.store.jdbc…| ActiveMQ Cleanup Timer
No more data to read from socket
所以的mq进程全部宕机,启动mq程序不报错。
1.我的想法是mq去连接数据库时,可能数据库宕机或者其他原因,mq连不上数据库,所以我就开始寻找mq关于以数据库为持久化的配置的相关属性
jdbcPersistenceAdapter节点配置:
属性 | 默认值 |
---|---|
lockAcquireSleepInterval | 1000 |
lockKeepAlivePeriod | 30000 |
lockAcquireSleepInterval :等待获取锁的时间长度(ms)
lockKeepAlivePeriod :定期向lock表中写入当前时间,指定了锁的存活时间
2.另一种方法是,使用supervisor守护进程,监控mq程序是否宕机,如果宕机,守护进程自动启动