Created
April 20, 2015 02:30
-
-
Save burtonator/b5f4228b0f0acbf05b4e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<beans | |
xmlns="http://www.springframework.org/schema/beans" | |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd | |
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> | |
<!-- Allows us to use system properties as variables in this configuration file --> | |
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> | |
<!-- | |
<property name="locations"> | |
<value>file:/etc/artemis-activemq/credentials.properties</value> | |
</property> | |
--> | |
</bean> | |
<!-- Allows accessing the server log --> | |
<!-- | |
<bean id="logQuery" class="org.fusesource.insight.log.log4j.Log4jLogQuery" | |
lazy-init="false" scope="singleton" | |
init-method="start" destroy-method="stop"> | |
</bean> | |
--> | |
<!-- | |
The <broker> element is used to configure the ActiveMQ broker. | |
--> | |
<broker xmlns="http://activemq.apache.org/schema/core" | |
brokerName="{{ansible_hostname}}.{{ansible_domain}}" | |
enableStatistics="true" | |
persistent="false" | |
schedulerSupport="false" | |
useJmx="true" | |
schedulePeriodForDestinationPurge="60000" | |
dataDirectory="/var/lib/artemis-activemq"> | |
<destinationPolicy> | |
<policyMap> | |
<policyEntries> | |
<policyEntry queue=">" | |
maxBrowsePageSize="2147483647" | |
producerFlowControl="true" | |
memoryLimit="50mb" | |
advisoryForDelivery="true" | |
advisoryForConsumed="true" | |
gcInactiveDestinations="true" | |
inactiveTimoutBeforeGC="60000"> | |
<!-- The constantPendingMessageLimitStrategy is used to prevent | |
slow topic consumers to block producers and affect other consumers | |
by limiting the number of messages that are retained | |
For more information, see: | |
http://activemq.apache.org/slow-consumer-handling.html | |
--> | |
<!-- | |
<pendingMessageLimitStrategy> | |
<constantPendingMessageLimitStrategy limit="1000"/> | |
</pendingMessageLimitStrategy> | |
--> | |
<deadLetterStrategy> | |
<sharedDeadLetterStrategy processNonPersistent="true" /> | |
</deadLetterStrategy> | |
</policyEntry> | |
</policyEntries> | |
</policyMap> | |
</destinationPolicy> | |
<!-- | |
Configure message persistence for the broker. The default persistence | |
mechanism is the KahaDB store (identified by the kahaDB tag). | |
For more information, see: | |
http://activemq.apache.org/persistence.html | |
--> | |
<persistenceAdapter> | |
<kahaDB directory="/var/lib/artemis-activemq/kahadb"/> | |
</persistenceAdapter> | |
<!-- | |
<persistenceAdapter> | |
<levelDB directory="/var/lib/artemis-activemq/leveldb" sync="false"/> | |
</persistenceAdapter> | |
--> | |
<!-- | |
<persistenceAdapter> | |
<memoryPersistenceAdapter/> | |
</persistenceAdapter> | |
--> | |
<!-- | |
The systemUsage controls the maximum amount of space the broker will | |
use before disabling caching and/or slowing down producers. For more information, see: | |
http://activemq.apache.org/producer-flow-control.html | |
--> | |
<systemUsage> | |
<systemUsage> | |
<memoryUsage> | |
<memoryUsage percentOfJvmHeap="70" /> | |
</memoryUsage> | |
<storeUsage> | |
<storeUsage limit="100 gb"/> | |
</storeUsage> | |
<tempUsage> | |
<tempUsage limit="10 gb"/> | |
</tempUsage> | |
</systemUsage> | |
</systemUsage> | |
<!-- | |
The transport connectors expose ActiveMQ over a given protocol to | |
clients and other brokers. For more information, see: | |
http://activemq.apache.org/configuring-transports.html | |
--> | |
<transportConnectors> | |
<!-- consider migration to the nio connector. I tried it once but it | |
did not fix the queue bug whereby messages weren't delivered | |
to the scheduler --> | |
<!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB --> | |
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=5000&wireFormat.maxFrameSize=104857600"/> | |
<!-- | |
<transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> | |
<transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> | |
<transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> | |
<transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> | |
--> | |
</transportConnectors> | |
<!-- destroy the spring context on shutdown to stop jetty --> | |
<shutdownHooks> | |
<bean xmlns="http://www.springframework.org/schema/beans" class="org.apache.activemq.hooks.SpringContextHook" /> | |
</shutdownHooks> | |
</broker> | |
<!-- | |
Enable web consoles, REST and Ajax APIs and demos | |
The web consoles requires by default login, you can disable this in the jetty.xml file | |
Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details | |
--> | |
<!-- | |
<import resource="jetty.xml"/> | |
--> | |
</beans> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment