Erreur de démarrage de l'embedded ActiveMQ: Magasin de stockage Temporaire de la limite est 51200 mo
J'ai un Printemps application web qui permettra d'envoyer et de les écouter sur un autonome ActiveMQ.
Lors du démarrage de l'application web, il affiche:
20:12:52.684 [localhost-startStop-1] ERROR o.a.activemq.broker.BrokerService - Temporary Store limit is 51200 mb, whilst the temporary data directory: /root/activemq-data/localhost/tmp_storage only has 29021 mb of usable space
J'ai googlé et de lire de nombreux articles, ils sont tous reportez-vous à configurer le courtier et systemusage de limiter le temp taille de la banque.
Cependant, je ne sais pas comment faire cela dans la configuration Spring. Voici ma configuration XML.
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="${jms.broker_url}" />
</bean>
<bean id="cachingConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
<property name="targetConnectionFactory" ref="connectionFactory" />
<property name="sessionCacheSize" value="10" />
</bean>
<bean id="recvQueue" class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg value="q.recv" />
</bean>
<bean id="sendQueue" class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg value="q.send" />
</bean>
<bean id="notifyQueue" class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg value="q.notify" />
</bean>
<!-- Spring JMS Template -->
<bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="cachingConnectionFactory" />
</bean>
<bean id="batchImplMessageProducer" class="com.seebon.spfcore.repository.jms.BatchImplMessageProducer">
<property name="jmsTemplate" ref="jmsTemplate" />
<property name="sendQueue" ref="sendQueue" />
<property name="recvQueue" ref="recvQueue" />
<property name="notifyQueue" ref="sendQueue" />
</bean>
<bean id="advancedQueueContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory" />
<property name="destination" ref="recvQueue" />
<property name="messageListener" ref="recvBatchImplMessageListener" />
<property name="concurrentConsumers" value="5" />
<property name="maxConcurrentConsumers" value="10" />
</bean>
<bean id="recvBatchImplMessageListener" class="com.seebon.spfcore.repository.jms.RecvBatchImpMessageListener" />
S'il vous plaît aidez-moi sortir d'ici, MERCI!
Vous devez vous connecter pour publier un commentaire.
Dans votre
activeMQ.xml
vous auriez un peu de configuration comme cecivous devez spécifier une valeur qui est disponible sur votre disque,comme d'erreur mentionne clairement il y a seulement 29021 MO d'espace libre, vous devez définir le
<tempUsage limit="50 gb"/>
à une valeur moindre que celle de votre espace librevous pouvez faire quelque chose comme
<tempUsage limit="20 gb"/>
Espérons que cette aide!
Bonne chance!
J'ai eu le même problème, mais en mettant un activeMQ.xml quelque part sur le serveur n'est pas la meilleure idée en ce cas, je pense.
Lorsque j'utilise un intégré à active mq server, je veux garder toute la configuration dans un seul endroit (surtout dans mon projet/fichier war).
Maintenant, il est possible de régler la tempUsage config valeurs directement au courtier-bean définition: comme décrit dans cette lien.
Par exemple:
(amq - espace de noms = http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd)