项目中引入消息队列ActiveMQ造成Tomcat启动不了,一直处于假死状态,其相关配置如下:

         <!-- 配置消息中间件ActiveMQ的连接工厂 -->
         <bean id="activeMQConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
            <property name="brokerURL" value="failover:${activemq_url}"/>
         </bean>
    

    原因解释:
        上述配置的property中brokenURL的value的failover代表的意思是失效重连,Tomcat在启动的时候会一直去连接ActiveMQ,如果ActiveMQ不可用,这样就会导致Tomcat一直卡在那里。

    解决方法:
    一. 修改配置

      1. 加上maxReconnectAttempts参数,其代表的意思是重连次数
         <!-- 配置消息中间件ActiveMQ的连接工厂 -->
         <bean id="activeMQConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
            <property name="brokerURL" value="failover:(${activemq_url})?maxReconnectAttempts=10"/>
         </bean>
      2. 删除failover参数
         <!-- 配置消息中间件ActiveMQ的连接工厂 -->
         <bean id="activeMQConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
            <property name="brokerURL" value="${activemq_url}"/>
         </bean>
    

    二. 配置连接池(研究中)


    不听乱世的耳语,只过自己想要的生活