mirror of https://github.com/apache/activemq.git
Adds new variables for activemq.conf and activemq.data to allow for easy externalization of configuration and data files. git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1245654 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
9f0a673e36
commit
3a561cc8c7
|
@ -40,8 +40,6 @@ import java.util.StringTokenizer;
|
|||
/**
|
||||
* Main class that can bootstrap an ActiveMQ broker console. Handles command
|
||||
* line argument parsing to set up and run broker tasks.
|
||||
*
|
||||
*
|
||||
*/
|
||||
public class Main {
|
||||
|
||||
|
@ -62,10 +60,10 @@ public class Main {
|
|||
// Parse for extension directory option
|
||||
app.parseExtensions(tokens);
|
||||
|
||||
// lets add the conf directory first, to find the log4j.properties just in case its not
|
||||
// in the activemq.classpath system property or some jar incorrectly includes one
|
||||
File confDir = new File(app.getActiveMQBase(), "conf");
|
||||
app.addClassPath(confDir);
|
||||
// lets add the conf directory first, to find the log4j.properties just in case its not
|
||||
// in the activemq.classpath system property or some jar incorrectly includes one
|
||||
File confDir = app.getActiveMQConfig();
|
||||
app.addClassPath(confDir);
|
||||
|
||||
// Add the following to the classpath:
|
||||
//
|
||||
|
@ -96,7 +94,6 @@ public class Main {
|
|||
}
|
||||
app.addExtensionDirectory(new File(homeLibDir, "optional"));
|
||||
app.addExtensionDirectory(new File(homeLibDir, "web"));
|
||||
|
||||
}
|
||||
|
||||
// Add any custom classpath specified from the system property
|
||||
|
@ -125,7 +122,7 @@ public class Main {
|
|||
|
||||
/**
|
||||
* Print out what's in the classloader tree being used.
|
||||
*
|
||||
*
|
||||
* @param cl
|
||||
* @return depth
|
||||
*/
|
||||
|
@ -219,17 +216,17 @@ public class Main {
|
|||
System.out.println("Java Runtime: " + buffer.toString());
|
||||
|
||||
buffer = new StringBuilder();
|
||||
buffer.append("current=");
|
||||
buffer.append(Runtime.getRuntime().totalMemory()/1024L);
|
||||
buffer.append("k free=");
|
||||
buffer.append(Runtime.getRuntime().freeMemory()/1024L);
|
||||
buffer.append("k max=");
|
||||
buffer.append(Runtime.getRuntime().maxMemory()/1024L);
|
||||
buffer.append("current=");
|
||||
buffer.append(Runtime.getRuntime().totalMemory()/1024L);
|
||||
buffer.append("k free=");
|
||||
buffer.append(Runtime.getRuntime().freeMemory()/1024L);
|
||||
buffer.append("k max=");
|
||||
buffer.append(Runtime.getRuntime().maxMemory()/1024L);
|
||||
buffer.append("k");
|
||||
System.out.println(" Heap sizes: " + buffer.toString());
|
||||
|
||||
List jvmArgs = ManagementFactory.getRuntimeMXBean().getInputArguments();
|
||||
buffer = new StringBuilder();
|
||||
List<?> jvmArgs = ManagementFactory.getRuntimeMXBean().getInputArguments();
|
||||
buffer = new StringBuilder();
|
||||
for (Object arg : jvmArgs) {
|
||||
buffer.append(" ").append(arg);
|
||||
}
|
||||
|
@ -237,14 +234,16 @@ public class Main {
|
|||
|
||||
System.out.println("ACTIVEMQ_HOME: " + getActiveMQHome());
|
||||
System.out.println("ACTIVEMQ_BASE: " + getActiveMQBase());
|
||||
System.out.println("ACTIVEMQ_CONFIG: " + getActiveMQConfig());
|
||||
System.out.println("ACTIVEMQ_DATA: " + getActiveMQDataDir());
|
||||
|
||||
ClassLoader cl = getClassLoader();
|
||||
Thread.currentThread().setContextClassLoader(cl);
|
||||
Thread.currentThread().setContextClassLoader(cl);
|
||||
|
||||
// Use reflection to run the task.
|
||||
try {
|
||||
String[] args = tokens.toArray(new String[tokens.size()]);
|
||||
Class task = cl.loadClass(TASK_DEFAULT_CLASS);
|
||||
Class<?> task = cl.loadClass(TASK_DEFAULT_CLASS);
|
||||
Method runTask = task.getMethod("main", new Class[] {
|
||||
String[].class, InputStream.class, PrintStream.class
|
||||
});
|
||||
|
@ -277,7 +276,7 @@ public class Main {
|
|||
* The extension directory feature will not work if the broker factory is
|
||||
* already in the classpath since we have to load him from a child
|
||||
* ClassLoader we build for it to work correctly.
|
||||
*
|
||||
*
|
||||
* @return true, if extension dir can be used. false otherwise.
|
||||
*/
|
||||
public boolean canUseExtdir() {
|
||||
|
@ -299,8 +298,6 @@ public class Main {
|
|||
|
||||
for (Iterator<File> iter = activeMQClassPath.iterator(); iter.hasNext();) {
|
||||
File dir = iter.next();
|
||||
// try{ System.out.println("Adding to classpath: " +
|
||||
// dir.getCanonicalPath()); }catch(Exception e){}
|
||||
urls.add(dir.toURI().toURL());
|
||||
}
|
||||
|
||||
|
@ -310,25 +307,16 @@ public class Main {
|
|||
File[] files = dir.listFiles();
|
||||
if (files != null) {
|
||||
|
||||
// Sort the jars so that classpath built is
|
||||
// consistently
|
||||
// in the same order. Also allows us to use jar
|
||||
// names to control
|
||||
// classpath order.
|
||||
Arrays.sort(files, new Comparator() {
|
||||
public int compare(Object o1, Object o2) {
|
||||
File f1 = (File)o1;
|
||||
File f2 = (File)o2;
|
||||
// Sort the jars so that classpath built is consistently in the same
|
||||
// order. Also allows us to use jar names to control classpath order.
|
||||
Arrays.sort(files, new Comparator<File>() {
|
||||
public int compare(File f1, File f2) {
|
||||
return f1.getName().compareTo(f2.getName());
|
||||
}
|
||||
});
|
||||
|
||||
for (int j = 0; j < files.length; j++) {
|
||||
if (files[j].getName().endsWith(".zip") || files[j].getName().endsWith(".jar")) {
|
||||
// try{ System.out.println("Adding to
|
||||
// classpath: " +
|
||||
// files[j].getCanonicalPath());
|
||||
// }catch(Exception e){}
|
||||
urls.add(files[j].toURI().toURL());
|
||||
}
|
||||
}
|
||||
|
@ -393,4 +381,26 @@ public class Main {
|
|||
|
||||
return activeMQBase;
|
||||
}
|
||||
|
||||
public File getActiveMQConfig() {
|
||||
File activeMQConfig = null;
|
||||
|
||||
if (System.getProperty("activemq.conf") != null) {
|
||||
activeMQConfig = new File(System.getProperty("activemq.conf"));
|
||||
} else {
|
||||
activeMQConfig = new File(getActiveMQBase() + "/conf");
|
||||
}
|
||||
return activeMQConfig;
|
||||
}
|
||||
|
||||
public File getActiveMQDataDir() {
|
||||
File activeMQDataDir = null;
|
||||
|
||||
if (System.getProperty("activemq.data") != null) {
|
||||
activeMQDataDir = new File(System.getProperty("activemq.data"));
|
||||
} else {
|
||||
activeMQDataDir = new File(getActiveMQBase() + "/data");
|
||||
}
|
||||
return activeMQDataDir;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,31 +5,31 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!-- START SNIPPET: xbean -->
|
||||
<!-- START SNIPPET: xbean -->
|
||||
<beans
|
||||
xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:amq="http://activemq.apache.org/schema/core"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:osgi="http://www.springframework.org/schema/osgi"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd
|
||||
http://www.springframework.org/schema/osgi http://www.springframework.org/schema/osgi/spring-osgi.xsd">
|
||||
|
||||
|
||||
<broker brokerName="web-console" useJmx="true" xmlns="http://activemq.apache.org/schema/core">
|
||||
<broker brokerName="web-console" useJmx="true" xmlns="http://activemq.apache.org/schema/core">
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/kahadb"/>
|
||||
<kahaDB directory="${activemq.data}/kahadb"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
<transportConnectors>
|
||||
|
@ -40,4 +40,4 @@
|
|||
</broker>
|
||||
|
||||
</beans>
|
||||
<!-- END SNIPPET: xbean -->
|
||||
<!-- END SNIPPET: xbean -->
|
||||
|
|
|
@ -90,8 +90,14 @@ if [ -z "$ACTIVEMQ_BASE" ] ; then
|
|||
fi
|
||||
|
||||
# Active MQ configuration directory
|
||||
if [ -z "$ACTIVEMQ_CONFIG_DIR" ] ; then
|
||||
ACTIVEMQ_CONFIG_DIR="$ACTIVEMQ_BASE/conf"
|
||||
if [ -z "$ACTIVEMQ_CONF" ] ; then
|
||||
# Preserve old configuration setting functionality.
|
||||
if [ -z "$ACTIVEMQ_CONFIG_DIR" ] ; then
|
||||
ACTIVEMQ_CONF="$ACTIVEMQ_BASE/conf"
|
||||
ACTIVEMQ_CONF_DIR="ACTIVEMQ_DATA"
|
||||
else
|
||||
ACTIVEMQ_CONF="$ACTIVEMQ_CONFIG_DIR"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Configure a user with non root priviledges, if no user is specified do not change user
|
||||
|
@ -99,9 +105,15 @@ if [ -z "$ACTIVEMQ_USER" ] ; then
|
|||
ACTIVEMQ_USER=""
|
||||
fi
|
||||
|
||||
# Active MQ configuration directory
|
||||
if [ -z "$ACTIVEMQ_DATA_DIR" ]; then
|
||||
ACTIVEMQ_DATA_DIR="$ACTIVEMQ_BASE/data"
|
||||
# Active MQ data directory
|
||||
if [ -z "$ACTIVEMQ_DATA" ] ; then
|
||||
# Preserve old configuration setting functionality.
|
||||
if [ -z "$ACTIVEMQ_DATA_DIR" ] ; then
|
||||
ACTIVEMQ_DATA="$ACTIVEMQ_BASE/data"
|
||||
ACTIVEMQ_DATA_DIR="ACTIVEMQ_DATA"
|
||||
else
|
||||
ACTIVEMQ_DATA="$ACTIVEMQ_DATA_DIR"
|
||||
fi
|
||||
fi
|
||||
|
||||
setCurrentUser(){
|
||||
|
@ -381,6 +393,8 @@ invokeJar(){
|
|||
-Dactivemq.classpath=\"${ACTIVEMQ_CLASSPATH}\" \
|
||||
-Dactivemq.home=\"${ACTIVEMQ_HOME}\" \
|
||||
-Dactivemq.base=\"${ACTIVEMQ_BASE}\" \
|
||||
-Dactivemq.conf=\"${ACTIVEMQ_CONF}\" \
|
||||
-Dactivemq.data=\"${ACTIVEMQ_DATA}\" \
|
||||
$ACTIVEMQ_CYGWIN \
|
||||
-jar \"${ACTIVEMQ_HOME}/bin/run.jar\" $COMMANDLINE_ARGS >/dev/null 2>&1 &
|
||||
RET=\"\$?\"; APID=\"\$!\";
|
||||
|
@ -393,6 +407,8 @@ invokeJar(){
|
|||
-Dactivemq.classpath=\"${ACTIVEMQ_CLASSPATH}\" \
|
||||
-Dactivemq.home=\"${ACTIVEMQ_HOME}\" \
|
||||
-Dactivemq.base=\"${ACTIVEMQ_BASE}\" \
|
||||
-Dactivemq.conf=\"${ACTIVEMQ_CONF}\" \
|
||||
-Dactivemq.data=\"${ACTIVEMQ_DATA}\" \
|
||||
$ACTIVEMQ_CYGWIN \
|
||||
-jar \"${ACTIVEMQ_HOME}/bin/run.jar\" $COMMANDLINE_ARGS --pid $PID &
|
||||
RET=\"\$?\"; APID=\"\$!\";
|
||||
|
@ -403,6 +419,8 @@ invokeJar(){
|
|||
-Dactivemq.classpath=\"${ACTIVEMQ_CLASSPATH}\" \
|
||||
-Dactivemq.home=\"${ACTIVEMQ_HOME}\" \
|
||||
-Dactivemq.base=\"${ACTIVEMQ_BASE}\" \
|
||||
-Dactivemq.conf=\"${ACTIVEMQ_CONF}\" \
|
||||
-Dactivemq.data=\"${ACTIVEMQ_DATA}\" \
|
||||
$ACTIVEMQ_CYGWIN \
|
||||
-jar \"${ACTIVEMQ_HOME}/bin/run.jar\" $COMMANDLINE_ARGS" $DOIT_POSTFIX
|
||||
RET="$?"
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
@ -116,10 +116,22 @@ if [ -z "$ACTIVEMQ_BASE" ] ; then
|
|||
ACTIVEMQ_BASE="$ACTIVEMQ_HOME"
|
||||
fi
|
||||
|
||||
# Active MQ configuration directory
|
||||
if [ -z "$ACTIVEMQ_CONF" ] ; then
|
||||
ACTIVEMQ_CONF="$ACTIVEMQ_BASE/conf"
|
||||
fi
|
||||
|
||||
# Active MQ data directory
|
||||
if [ -z "$ACTIVEMQ_DATA" ] ; then
|
||||
ACTIVEMQ_DATA="$ACTIVEMQ_BASE/data"
|
||||
fi
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin; then
|
||||
ACTIVEMQ_HOME=`cygpath --windows "$ACTIVEMQ_HOME"`
|
||||
ACTIVEMQ_BASE=`cygpath --windows "$ACTIVEMQ_BASE"`
|
||||
ACTIVEMQ_CONF=`cygpath --windows "$ACTIVEMQ_CONF"`
|
||||
ACTIVEMQ_DATA=`cygpath --windows "$ACTIVEMQ_DATA"`
|
||||
ACTIVEMQ_CLASSPATH=`cygpath --path --windows "$ACTIVEMQ_CLASSPATH"`
|
||||
JAVA_HOME=`cygpath --windows "$JAVA_HOME"`
|
||||
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
|
||||
|
@ -127,7 +139,7 @@ if $cygwin; then
|
|||
fi
|
||||
|
||||
# Set default classpath
|
||||
ACTIVEMQ_CLASSPATH="${ACTIVEMQ_BASE}/conf;"$ACTIVEMQ_CLASSPATH
|
||||
ACTIVEMQ_CLASSPATH="${ACTIVEMQ_CONF};"$ACTIVEMQ_CLASSPATH
|
||||
|
||||
if [ ""$1 = "start" ] ; then
|
||||
if [ -z "$ACTIVEMQ_OPTS" ] ; then
|
||||
|
@ -149,7 +161,7 @@ fi
|
|||
#ACTIVEMQ_DEBUG_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
|
||||
|
||||
if [ -n "$CYGHOME" ]; then
|
||||
exec "$JAVACMD" $ACTIVEMQ_OPTS $ACTIVEMQ_DEBUG_OPTS -Dactivemq.classpath="${ACTIVEMQ_CLASSPATH}" -Dactivemq.home="${ACTIVEMQ_HOME}" -Dactivemq.base="${ACTIVEMQ_BASE}" -Dcygwin.user.home="$CYGHOME" -jar "${ACTIVEMQ_HOME}/bin/run.jar" $@
|
||||
exec "$JAVACMD" $ACTIVEMQ_OPTS $ACTIVEMQ_DEBUG_OPTS -Dactivemq.classpath="${ACTIVEMQ_CLASSPATH}" -Dactivemq.home="${ACTIVEMQ_HOME}" -Dactivemq.base="${ACTIVEMQ_BASE}" -Dactivemq.conf="${ACTIVEMQ_CONF}" -Dactivemq.data="${ACTIVEMQ_DATA}" -Dcygwin.user.home="$CYGHOME" -jar "${ACTIVEMQ_HOME}/bin/run.jar" $@
|
||||
else
|
||||
exec "$JAVACMD" $ACTIVEMQ_OPTS $ACTIVEMQ_DEBUG_OPTS -Dactivemq.classpath="${ACTIVEMQ_CLASSPATH}" -Dactivemq.home="${ACTIVEMQ_HOME}" -Dactivemq.base="${ACTIVEMQ_BASE}" -jar "${ACTIVEMQ_HOME}/bin/run.jar" $@
|
||||
exec "$JAVACMD" $ACTIVEMQ_OPTS $ACTIVEMQ_DEBUG_OPTS -Dactivemq.classpath="${ACTIVEMQ_CLASSPATH}" -Dactivemq.home="${ACTIVEMQ_HOME}" -Dactivemq.base="${ACTIVEMQ_BASE}" -Dactivemq.conf="${ACTIVEMQ_CONF}" -Dactivemq.data="${ACTIVEMQ_DATA}" -jar "${ACTIVEMQ_HOME}/bin/run.jar" $@
|
||||
fi
|
||||
|
|
|
@ -71,6 +71,10 @@ echo.
|
|||
|
||||
if "%ACTIVEMQ_BASE%" == "" set ACTIVEMQ_BASE=%ACTIVEMQ_HOME%
|
||||
|
||||
if "%ACTIVEMQ_CONF%" == "" set ACTIVEMQ_CONF=%ACTIVEMQ_HOME%\conf
|
||||
|
||||
if "%ACTIVEMQ_DATA%" == "" set ACTIVEMQ_DATA=%ACTIVEMQ_HOME%\data
|
||||
|
||||
if /i not "%1" == "start" goto debugOpts
|
||||
|
||||
|
||||
|
@ -88,9 +92,8 @@ REM Uncomment to enable remote debugging
|
|||
REM SET ACTIVEMQ_DEBUG_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
|
||||
|
||||
REM Setup ActiveMQ Classpath. Default is the conf directory.
|
||||
set ACTIVEMQ_CLASSPATH=%ACTIVEMQ_BASE%/conf;%ACTIVEMQ_CLASSPATH%
|
||||
|
||||
"%_JAVACMD%" %SUNJMX% %ACTIVEMQ_DEBUG_OPTS% %ACTIVEMQ_OPTS% %SSL_OPTS% -Dactivemq.classpath="%ACTIVEMQ_CLASSPATH%" -Dactivemq.home="%ACTIVEMQ_HOME%" -Dactivemq.base="%ACTIVEMQ_BASE%" -jar "%ACTIVEMQ_HOME%/bin/run.jar" %*
|
||||
set ACTIVEMQ_CLASSPATH=%ACTIVEMQ_CONF%;%ACTIVEMQ_DATA%;%ACTIVEMQ_CLASSPATH%
|
||||
"%_JAVACMD%" %SUNJMX% %ACTIVEMQ_DEBUG_OPTS% %ACTIVEMQ_OPTS% %SSL_OPTS% -Dactivemq.classpath="%ACTIVEMQ_CLASSPATH%" -Dactivemq.home="%ACTIVEMQ_HOME%" -Dactivemq.base="%ACTIVEMQ_BASE%" -Dactivemq.data="%ACTIVEMQ_DATA%" -Dactivemq.conf="%ACTIVEMQ_CONF%" -jar "%ACTIVEMQ_HOME%/bin/run.jar" %*
|
||||
|
||||
goto end
|
||||
|
||||
|
|
|
@ -71,6 +71,10 @@ echo.
|
|||
|
||||
if "%ACTIVEMQ_BASE%" == "" set ACTIVEMQ_BASE=%ACTIVEMQ_HOME%
|
||||
|
||||
if "%ACTIVEMQ_CONF%" == "" set ACTIVEMQ_CONF=%ACTIVEMQ_HOME%\conf
|
||||
|
||||
if "%ACTIVEMQ_DATA%" == "" set ACTIVEMQ_DATA=%ACTIVEMQ_HOME%\data
|
||||
|
||||
if "%ACTIVEMQ_OPTS%" == "" set ACTIVEMQ_OPTS=-Xms1G -Xmx1G -Djava.util.logging.config.file=logging.properties
|
||||
|
||||
if "%SUNJMX%" == "" set SUNJMX=-Dcom.sun.management.jmxremote
|
||||
|
@ -82,11 +86,11 @@ REM SET ACTIVEMQ_DEBUG_OPTS="-agentlib:yjpagent"
|
|||
REM Uncomment to enable remote debugging
|
||||
REM SET ACTIVEMQ_DEBUG_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
|
||||
|
||||
REM Setup ActiveMQ Classpath.
|
||||
REM Setup ActiveMQ Classpath.
|
||||
REM Add instance conf dir before AMQ install conf dir to pick up instance-specific classpath entries first
|
||||
set ACTIVEMQ_CLASSPATH=%ACTIVEMQ_BASE%/conf;%ACTIVEMQ_HOME%/conf;%ACTIVEMQ_CLASSPATH%
|
||||
set ACTIVEMQ_CLASSPATH=%ACTIVEMQ_CONF%;%ACTIVEMQ_BASE%/conf;%ACTIVEMQ_HOME%/conf;%ACTIVEMQ_CLASSPATH%
|
||||
|
||||
"%_JAVACMD%" %SUNJMX% %ACTIVEMQ_DEBUG_OPTS% %ACTIVEMQ_OPTS% %SSL_OPTS% -Dactivemq.classpath="%ACTIVEMQ_CLASSPATH%" -Dactivemq.home="%ACTIVEMQ_HOME%" -Dactivemq.base="%ACTIVEMQ_BASE%" -jar "%ACTIVEMQ_HOME%/bin/run.jar" start %*
|
||||
"%_JAVACMD%" %SUNJMX% %ACTIVEMQ_DEBUG_OPTS% %ACTIVEMQ_OPTS% %SSL_OPTS% -Dactivemq.classpath="%ACTIVEMQ_CLASSPATH%" -Dactivemq.home="%ACTIVEMQ_HOME%" -Dactivemq.base="%ACTIVEMQ_BASE%" -Dactivemq.conf="%ACTIVEMQ_CONF%" -Dactivemq.data="%ACTIVEMQ_DATA%" -jar "%ACTIVEMQ_HOME%/bin/run.jar" start %*
|
||||
|
||||
goto end
|
||||
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
@ -25,26 +25,26 @@
|
|||
<!-- 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:${activemq.base}/conf/credentials.properties</value>
|
||||
</property>
|
||||
<value>file:${activemq.conf}/credentials.properties</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
-->
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data">
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">
|
||||
|
||||
<!--
|
||||
For better performances use VM cursor and small memory limit.
|
||||
For more information, see:
|
||||
|
||||
For better performances use VM cursor and small memory limit.
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/message-cursors.html
|
||||
|
||||
|
||||
Also, if your producer is "hanging", it's probably due to producer flow control.
|
||||
For more information, see:
|
||||
http://activemq.apache.org/producer-flow-control.html
|
||||
-->
|
||||
|
||||
|
||||
<destinationPolicy>
|
||||
<policyMap>
|
||||
<policyEntries>
|
||||
|
@ -56,9 +56,9 @@
|
|||
<policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb">
|
||||
<!-- Use VM cursor for better latency
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/message-cursors.html
|
||||
|
||||
|
||||
<pendingQueuePolicy>
|
||||
<vmQueueCursor/>
|
||||
</pendingQueuePolicy>
|
||||
|
@ -66,38 +66,38 @@
|
|||
</policyEntry>
|
||||
</policyEntries>
|
||||
</policyMap>
|
||||
</destinationPolicy>
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
</destinationPolicy>
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
-->
|
||||
<managementContext>
|
||||
<managementContext createConnector="false"/>
|
||||
</managementContext>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
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
|
||||
mechanism is the KahaDB store (identified by the kahaDB tag).
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/persistence.html
|
||||
-->
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/kahadb"/>
|
||||
<kahaDB directory="${activemq.data}/kahadb"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
The systemUsage controls the maximum amount of space the broker will
|
||||
The systemUsage controls the maximum amount of space the broker will
|
||||
use before slowing down producers. For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/producer-flow-control.html
|
||||
|
||||
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
<memoryUsage>
|
||||
|
@ -111,13 +111,13 @@
|
|||
</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
|
||||
clients and other brokers. For more information, see:
|
||||
|
||||
http://activemq.apache.org/configuring-transports.html
|
||||
-->
|
||||
<transportConnectors>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
|
||||
|
@ -125,12 +125,12 @@
|
|||
|
||||
</broker>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Enable web consoles, REST and Ajax APIs and demos
|
||||
|
||||
Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details
|
||||
|
||||
Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details
|
||||
-->
|
||||
<import resource="jetty.xml"/>
|
||||
|
||||
|
||||
</beans>
|
||||
<!-- END SNIPPET: example -->
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
<bean id="securityLoginService" class="org.eclipse.jetty.security.HashLoginService">
|
||||
<property name="name" value="ActiveMQRealm" />
|
||||
<property name="config" value="${activemq.base}/conf/jetty-realm.properties" />
|
||||
<property name="config" value="${activemq.conf}/jetty-realm.properties" />
|
||||
</bean>
|
||||
|
||||
<bean id="securityConstraint" class="org.eclipse.jetty.http.security.Constraint">
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<!-- 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:${activemq.base}/conf/credentials.properties</value>
|
||||
<value>file:${activemq.conf}/credentials.properties</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
|
|
|
@ -5,24 +5,24 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
Communicate with a broker using command agent over XMPP
|
||||
<!--
|
||||
Communicate with a broker using command agent over XMPP
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/command-agent.html and
|
||||
http://activemq.apache.org/xmpp.html
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-command.xml to your command
|
||||
|
||||
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-command.xml
|
||||
-->
|
||||
<beans
|
||||
|
@ -31,22 +31,22 @@
|
|||
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-2.0.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"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="command-broker" dataDirectory="${activemq.base}/data">
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="command-broker" dataDirectory="${activemq.data}">
|
||||
<managementContext>
|
||||
<managementContext createConnector="true"/>
|
||||
</managementContext>
|
||||
|
||||
|
||||
<transportConnectors>
|
||||
<!-- Create a XMPP transport for XMPP clients. -->
|
||||
<transportConnector name="xmpp" uri="xmpp://localhost:61222"/>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
|
||||
</transportConnectors>
|
||||
</broker>
|
||||
|
||||
|
||||
<!-- Create a command agent -->
|
||||
<commandAgent xmlns="http://activemq.apache.org/schema/core" brokerUrl="vm://localhost"/>
|
||||
</beans>
|
|
@ -5,54 +5,54 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Demonstrates various ActiveMQ configuration options
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-demo.xml to your command
|
||||
|
||||
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-demo.xml
|
||||
-->
|
||||
<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-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
|
||||
|
||||
<!--
|
||||
Allows us to use system properties as variables in this configuration
|
||||
<!--
|
||||
Allows us to use system properties as variables in this configuration
|
||||
file. For more information, see the Javadoc:
|
||||
|
||||
http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/beans/factory/config/PropertyPlaceholderConfigurer.html
|
||||
|
||||
http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/beans/factory/config/PropertyPlaceholderConfigurer.html
|
||||
-->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
|
||||
<property name="locations">
|
||||
<value>file:${activemq.base}/conf/credentials.properties</value>
|
||||
</property>
|
||||
<value>file:${activemq.conf}/credentials.properties</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
|
||||
Tips:
|
||||
- Change the brokerName attribute to something unique
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
|
||||
Tips:
|
||||
- Change the brokerName attribute to something unique
|
||||
-->
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="amq-broker" useJmx="true" destroyApplicationContextOnStop="true">
|
||||
|
||||
<!--
|
||||
Examples of destination-specific policies using destination
|
||||
names or wildcards. For more information, see:
|
||||
|
||||
<!--
|
||||
Examples of destination-specific policies using destination
|
||||
names or wildcards. For more information, see:
|
||||
|
||||
http://activemq.apache.org/per-destination-policies.html
|
||||
http://activemq.apache.org/destination-features.html
|
||||
http://activemq.apache.org/slow-consumer-handling.html
|
||||
|
@ -61,22 +61,22 @@
|
|||
<destinationPolicy>
|
||||
<policyMap>
|
||||
<policyEntries>
|
||||
<!--
|
||||
<!--
|
||||
Limit ALL queues and topics to using 5mb of memory and turn on producer flow control
|
||||
-->
|
||||
<policyEntry queue=">" producerFlowControl="true" memoryLimit="5mb"/>
|
||||
<policyEntry topic=">" producerFlowControl="true" memoryLimit="5mb">
|
||||
<dispatchPolicy>
|
||||
<!--
|
||||
<!--
|
||||
Use total ordering, see:
|
||||
http://activemq.apache.org/total-ordering.html
|
||||
http://activemq.apache.org/total-ordering.html
|
||||
-->
|
||||
<strictOrderDispatchPolicy/>
|
||||
</dispatchPolicy>
|
||||
<subscriptionRecoveryPolicy>
|
||||
<!--
|
||||
Upon subscription, receive the last image sent
|
||||
on the destination.
|
||||
<!--
|
||||
Upon subscription, receive the last image sent
|
||||
on the destination.
|
||||
-->
|
||||
<lastImageSubscriptionRecoveryPolicy/>
|
||||
</subscriptionRecoveryPolicy>
|
||||
|
@ -85,90 +85,90 @@
|
|||
</policyMap>
|
||||
</destinationPolicy>
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
-->
|
||||
<managementContext>
|
||||
<managementContext createConnector="false"/>
|
||||
</managementContext>
|
||||
|
||||
<!--
|
||||
The network connectors are used to create a network of brokers. For
|
||||
more information, see:
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
<!--
|
||||
The network connectors are used to create a network of brokers. For
|
||||
more information, see:
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
-->
|
||||
<!-- networkConnectors-->
|
||||
<!--
|
||||
<!--
|
||||
This connector automatically discovers the other brokers using
|
||||
IP multicast. Such discovery is possible only because the
|
||||
IP multicast. Such discovery is possible only because the
|
||||
openwire transport connector is advertised via the default IP
|
||||
multicast group. For more information on multicast, see:
|
||||
|
||||
multicast group. For more information on multicast, see:
|
||||
|
||||
http://activemq.apache.org/multicast-transport-reference.html
|
||||
|
||||
<networkConnector name="default-nc" uri="multicast://default"/>
|
||||
-->
|
||||
|
||||
<!--
|
||||
|
||||
<!--
|
||||
Example of a static configuration. For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/static-transport-reference.html
|
||||
|
||||
|
||||
<networkConnector name="host1 and host2" uri="static://(tcp://host1:61616,tcp://host2:61616)"/>
|
||||
-->
|
||||
<!-- /networkConnectors-->
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Configure message persistence for the broker. The default persistence
|
||||
mechanism is the AMQ store (identified by the amqPersistenceAdapter).
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/persistence.html
|
||||
mechanism is the AMQ store (identified by the amqPersistenceAdapter).
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/persistence.html
|
||||
-->
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/dynamic-broker1/kahadb" indexWriteBatchSize="1000" enableIndexWriteAsync="true" enableJournalDiskSyncs="false" />
|
||||
<kahaDB directory="${activemq.data}/dynamic-broker1/kahadb" indexWriteBatchSize="1000" enableIndexWriteAsync="true" enableJournalDiskSyncs="false" />
|
||||
</persistenceAdapter>
|
||||
|
||||
<!--
|
||||
Configure the following if you wish to use journaled JDBC for message
|
||||
persistence.
|
||||
|
||||
<!--
|
||||
Configure the following if you wish to use journaled JDBC for message
|
||||
persistence.
|
||||
|
||||
<persistenceFactory>
|
||||
<journalPersistenceAdapterFactory dataDirectory="${activemq.base}/data" dataSource="#postgres-ds"/>
|
||||
<journalPersistenceAdapterFactory dataDirectory="${activemq.data}" dataSource="#postgres-ds"/>
|
||||
</persistenceFactory>
|
||||
-->
|
||||
|
||||
<!--
|
||||
Configure the following if you wish to use non-journaled JDBC for message
|
||||
<!--
|
||||
Configure the following if you wish to use non-journaled JDBC for message
|
||||
persistence.
|
||||
|
||||
|
||||
<persistenceAdapter>
|
||||
<jdbcPersistenceAdapter dataSource="#postgres-ds"/>
|
||||
</persistenceAdapter>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!--
|
||||
The sslContext can be used to configure broker-specific SSL properties.
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/how-do-i-use-ssl.html
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/how-do-i-use-ssl.html
|
||||
-->
|
||||
<sslContext>
|
||||
<sslContext keyStore="file:${activemq.base}/conf/broker.ks"
|
||||
keyStorePassword="password" trustStore="file:${activemq.base}/conf/broker.ts"
|
||||
<sslContext keyStore="file:${activemq.conf}/broker.ks"
|
||||
keyStorePassword="password" trustStore="file:${activemq.conf}/broker.ts"
|
||||
trustStorePassword="password"/>
|
||||
</sslContext>
|
||||
|
||||
|
||||
<!--
|
||||
The systemUsage controls the maximum amount of space the broker will
|
||||
use before slowing down producers. For more information, see:
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
The systemUsage controls the maximum amount of space the broker will
|
||||
use before slowing down producers. For more information, see:
|
||||
|
||||
http://activemq.apache.org/producer-flow-control.html
|
||||
-->
|
||||
<systemUsage>
|
||||
|
@ -186,14 +186,14 @@
|
|||
</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
|
||||
clients and other brokers. For more information, see:
|
||||
|
||||
http://activemq.apache.org/configuring-transports.html
|
||||
-->
|
||||
<transportConnectors>
|
||||
<!-- Create a TCP transport that is advertised on via an IP multicast
|
||||
<!-- Create a TCP transport that is advertised on via an IP multicast
|
||||
group named default. -->
|
||||
<transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/>
|
||||
<!-- Create a SSL transport. Make sure to configure the SSL options
|
||||
|
@ -210,34 +210,34 @@
|
|||
<!--
|
||||
Lets deploy some Enterprise Integration Patterns inside the ActiveMQ Message Broker
|
||||
For more details see
|
||||
|
||||
|
||||
http://activemq.apache.org/enterprise-integration-patterns.html
|
||||
-->
|
||||
<import resource="camel.xml"/>
|
||||
|
||||
|
||||
<!--
|
||||
An embedded servlet engine for serving up the Admin console and other demos.
|
||||
For more information, see:
|
||||
|
||||
<!--
|
||||
An embedded servlet engine for serving up the Admin console and other demos.
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/web-console.html
|
||||
-->
|
||||
<import resource="jetty.xml"/>
|
||||
|
||||
|
||||
<!--
|
||||
Uncomment to create a command agent to respond to message based admin
|
||||
commands on the ActiveMQ.Agent topic. For more information, see:
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
Uncomment to create a command agent to respond to message based admin
|
||||
commands on the ActiveMQ.Agent topic. For more information, see:
|
||||
|
||||
http://activemq.apache.org/command-agent.html
|
||||
|
||||
|
||||
<commandAgent xmlns="http://activemq.apache.org/schema/core" brokerUrl="vm://localhost"/>
|
||||
-->
|
||||
|
||||
|
||||
<!--
|
||||
This xbean configuration file supports all the standard Spring XML
|
||||
configuration options such as the following bean definitions.
|
||||
<!--
|
||||
This xbean configuration file supports all the standard Spring XML
|
||||
configuration options such as the following bean definitions.
|
||||
-->
|
||||
|
||||
<!-- Postgres DataSource Sample Setup -->
|
||||
|
|
|
@ -5,29 +5,29 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Create a dynamic network of brokers
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
|
||||
|
||||
To run this example network of ActiveMQ brokers run
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-dynamic-network-broker1.xml
|
||||
|
||||
|
||||
and
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-dynamic-network-broker2.xml
|
||||
|
||||
|
||||
in separate consoles
|
||||
-->
|
||||
<beans
|
||||
|
@ -39,7 +39,7 @@
|
|||
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="dynamic-broker1" dataDirectory="${activemq.base}/data">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="dynamic-broker1" dataDirectory="${activemq.data}">
|
||||
|
||||
<!-- Destination specific policies using destination names or wildcards -->
|
||||
<destinationPolicy>
|
||||
|
@ -64,21 +64,21 @@
|
|||
<!--
|
||||
Configure network connector to use multicast protocol
|
||||
For more information, see
|
||||
|
||||
|
||||
http://activemq.apache.org/multicast-transport-reference.html
|
||||
-->
|
||||
<networkConnectors>
|
||||
<networkConnector uri="multicast://default"
|
||||
dynamicOnly="true"
|
||||
networkTTL="3"
|
||||
prefetchSize="1"
|
||||
decreaseNetworkConsumerPriority="true" />
|
||||
</networkConnectors>
|
||||
|
||||
<networkConnectors>
|
||||
<networkConnector uri="multicast://default"
|
||||
dynamicOnly="true"
|
||||
networkTTL="3"
|
||||
prefetchSize="1"
|
||||
decreaseNetworkConsumerPriority="true" />
|
||||
</networkConnectors>
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/dynamic-broker1/kahadb"/>
|
||||
<kahaDB directory="${activemq.data}/dynamic-broker1/kahadb"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
<!-- The maximum amount of space the broker will use before slowing down producers -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
|
@ -94,14 +94,14 @@
|
|||
</systemUsage>
|
||||
</systemUsage>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
The transport connectors ActiveMQ will listen to
|
||||
Configure discovery URI to use multicast protocol
|
||||
-->
|
||||
<transportConnectors>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616" discoveryUri="multicast://default" />
|
||||
</transportConnectors>
|
||||
|
||||
|
||||
|
||||
</broker>
|
||||
|
||||
|
|
|
@ -5,29 +5,29 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Create a dynamic network of brokers
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
|
||||
|
||||
To run this example network of ActiveMQ brokers run
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-dynamic-network-broker1.xml
|
||||
|
||||
|
||||
and
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-dynamic-network-broker2.xml
|
||||
|
||||
|
||||
in separate consoles
|
||||
-->
|
||||
<beans
|
||||
|
@ -35,12 +35,12 @@
|
|||
xmlns:amq="http://activemq.apache.org/schema/core"
|
||||
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-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd">
|
||||
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="dynamic-broker2" dataDirectory="${activemq.base}/data">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="dynamic-broker2" dataDirectory="${activemq.data}">
|
||||
|
||||
<!-- Destination specific policies using destination names or wildcards -->
|
||||
<destinationPolicy>
|
||||
|
@ -65,38 +65,38 @@
|
|||
<!--
|
||||
Configure network connector to use multicast protocol
|
||||
For more information, see
|
||||
|
||||
|
||||
http://activemq.apache.org/multicast-transport-reference.html
|
||||
-->
|
||||
<networkConnectors>
|
||||
<networkConnector uri="multicast://default"
|
||||
dynamicOnly="true"
|
||||
networkTTL="3"
|
||||
prefetchSize="1"
|
||||
dynamicOnly="true"
|
||||
networkTTL="3"
|
||||
prefetchSize="1"
|
||||
decreaseNetworkConsumerPriority="true" />
|
||||
</networkConnectors>
|
||||
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/dynamic-broker2/kahadb" />
|
||||
</persistenceAdapter>
|
||||
|
||||
<!-- The maximum amount of space the broker will use before slowing down producers -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
<memoryUsage>
|
||||
<memoryUsage limit="20 mb"/>
|
||||
</memoryUsage>
|
||||
<storeUsage>
|
||||
<storeUsage limit="1 gb" name="foo"/>
|
||||
</storeUsage>
|
||||
<tempUsage>
|
||||
<tempUsage limit="100 mb"/>
|
||||
</tempUsage>
|
||||
</systemUsage>
|
||||
</systemUsage>
|
||||
|
||||
<!--
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.data}/dynamic-broker2/kahadb" />
|
||||
</persistenceAdapter>
|
||||
|
||||
<!-- The maximum amount of space the broker will use before slowing down producers -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
<memoryUsage>
|
||||
<memoryUsage limit="20 mb"/>
|
||||
</memoryUsage>
|
||||
<storeUsage>
|
||||
<storeUsage limit="1 gb" name="foo"/>
|
||||
</storeUsage>
|
||||
<tempUsage>
|
||||
<tempUsage limit="100 mb"/>
|
||||
</tempUsage>
|
||||
</systemUsage>
|
||||
</systemUsage>
|
||||
|
||||
<!--
|
||||
The transport connectors ActiveMQ will listen to
|
||||
Configure discovery URI to use multicast protocol
|
||||
-->
|
||||
|
|
|
@ -5,27 +5,27 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Use JDBC for message persistence
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/persistence.html
|
||||
|
||||
|
||||
You need to add Derby database to your classpath in order to make this example work.
|
||||
Download it from http://db.apache.org/derby/ and put it in the ${ACTIVEMQ_HOME}/lib/optional/ folder
|
||||
Optionally you can configure any other RDBM as shown below
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-jdbc.xml to your command
|
||||
|
||||
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-jdbc.xml
|
||||
-->
|
||||
<beans
|
||||
|
@ -37,26 +37,26 @@
|
|||
<!-- 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:${activemq.base}/conf/credentials.properties</value>
|
||||
<value>file:${activemq.conf}/credentials.properties</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<broker useJmx="false" brokerName="jdbcBroker" xmlns="http://activemq.apache.org/schema/core">
|
||||
<persistenceAdapter>
|
||||
<jdbcPersistenceAdapter dataDirectory="${activemq.base}/data" dataSource="#derby-ds"/>
|
||||
<jdbcPersistenceAdapter dataDirectory="${activemq.data}" dataSource="#derby-ds"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
<transportConnectors>
|
||||
<transportConnector name="default" uri="tcp://0.0.0.0:61616"/>
|
||||
</transportConnectors>
|
||||
</broker>
|
||||
|
||||
|
||||
<!-- Embedded Derby DataSource Sample Setup -->
|
||||
<bean id="derby-ds" class="org.apache.derby.jdbc.EmbeddedDataSource">
|
||||
<property name="databaseName" value="derbydb"/>
|
||||
<property name="createDatabase" value="create"/>
|
||||
</bean>
|
||||
|
||||
|
||||
<!-- Postgres DataSource Sample Setup -->
|
||||
<!--
|
||||
<bean id="postgres-ds" class="org.postgresql.ds.PGPoolingDataSource">
|
||||
|
|
|
@ -5,27 +5,27 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Tune ActiveMQ broker so it can handle large number of queues (tens of thousands)
|
||||
For more information, see:
|
||||
http://activemq.apache.org/how-do-i-configure-10s-of-1000s-of-queues-in-a-single-broker-.html
|
||||
|
||||
Be sure to make necessary changes in your startup script, to
|
||||
|
||||
1. Give broker enough memory
|
||||
|
||||
Be sure to make necessary changes in your startup script, to
|
||||
|
||||
1. Give broker enough memory
|
||||
2. Disable dedicated task runner
|
||||
|
||||
|
||||
e.g. ACTIVEMQ_OPTS="-Xmx1024M -Dorg.apache.activemq.UseDedicatedTaskRunner=false"
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-scalability.xml to your command
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-scalability.xml
|
||||
-->
|
||||
|
@ -39,12 +39,12 @@
|
|||
<!-- Allows us to use system properties as variables in this configuration file -->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data" useJmx="false" advisorySupport="false">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}" useJmx="false" advisorySupport="false">
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Turn on optimizedDispatch
|
||||
For more information, see:
|
||||
http://activemq.apache.org/per-destination-policies.html
|
||||
http://activemq.apache.org/per-destination-policies.html
|
||||
-->
|
||||
<destinationPolicy>
|
||||
<policyMap>
|
||||
|
@ -54,17 +54,17 @@
|
|||
</policyMap>
|
||||
</destinationPolicy>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Use KahaDB for persistence
|
||||
For more information, see:
|
||||
http://activemq.apache.org/kahadb.html
|
||||
-->
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/kahadb" enableIndexWriteAsync="true"/>
|
||||
<kahaDB directory="${activemq.data}/kahadb" enableIndexWriteAsync="true"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
<!--
|
||||
Use NIO transport
|
||||
<!--
|
||||
Use NIO transport
|
||||
For more information, see:
|
||||
http://activemq.apache.org/configuring-transports.html#ConfiguringTransports-TheNIOTransport
|
||||
-->
|
||||
|
@ -73,5 +73,5 @@
|
|||
</transportConnectors>
|
||||
|
||||
</broker>
|
||||
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
|
||||
<bean id="propertyConfigurer" class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">
|
||||
<constructor-arg ref="configurationEncryptor" />
|
||||
<property name="location" value="file:${activemq.base}/conf/credentials-enc.properties"/>
|
||||
<property name="location" value="file:${activemq.conf}/credentials-enc.properties"/>
|
||||
</bean>
|
||||
|
||||
<!--
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
@ -24,9 +24,9 @@
|
|||
<!-- Allows us to use system properties as variables in this configuration file -->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
|
||||
advisories incurr a hit with every add connection|destination|producer|consumer
|
||||
- client side: providerUrl = tcp://localhost:61616?jms.watchTopicAdvisories=false
|
||||
statistics have a small impact on concurrency so disable
|
||||
|
@ -35,19 +35,19 @@
|
|||
|
||||
ACTIVEMQ_OPTS_MEMORY="-Xmx11g -Xms6g -Dorg.apache.activemq.UseDedicatedTaskRunner=false -Djava.util.logging.config.file=logging.properties -XX:+UseLargePages"
|
||||
-->
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost"
|
||||
dataDirectory="${activemq.base}/data" deleteAllMessagesOnStartup="true"
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost"
|
||||
dataDirectory="${activemq.data}" deleteAllMessagesOnStartup="true"
|
||||
advisorySupport="false"
|
||||
enableStatistics="false"
|
||||
schedulerSupport="false"
|
||||
useJmx="false">
|
||||
|
||||
|
||||
<destinationPolicy>
|
||||
<policyMap>
|
||||
<policyEntries>
|
||||
<!--
|
||||
<!--
|
||||
producerFlowControll thread unnecessary with no memory limits
|
||||
with no failover, no need to suppress duplicates so audit can be disabled
|
||||
with no failover, no need to suppress duplicates so audit can be disabled
|
||||
message expiry thread unnecessary as normal dispatch will handle expiry
|
||||
-->
|
||||
<policyEntry topic=">" producerFlowControl="false" enableAudit="false" expireMessagesPeriod="0">
|
||||
|
@ -61,19 +61,19 @@
|
|||
<!-- keep all references in memory -->
|
||||
<vmQueueCursor/>
|
||||
</pendingQueuePolicy>
|
||||
|
||||
|
||||
</policyEntry>
|
||||
</policyEntries>
|
||||
</policyMap>
|
||||
</destinationPolicy>
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
</destinationPolicy>
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
-->
|
||||
<managementContext>
|
||||
<managementContext createConnector="false"/>
|
||||
|
@ -84,15 +84,15 @@
|
|||
<!-- write in max 62k chunks to max disk io bandwith -->
|
||||
<!-- use small number of data files (seldom switch) -->
|
||||
<!-- keep index off the disk (in cache) -->
|
||||
|
||||
<kahaDB directory="${activemq.base}/data/kahadb"
|
||||
|
||||
<kahaDB directory="${activemq.data}/kahadb"
|
||||
cleanupInterval="300000" checkpointInterval="50000"
|
||||
journalMaxWriteBatchSize="62k"
|
||||
journalMaxFileLength="1g"
|
||||
indexCacheSize="100000" indexWriteBatchSize="100000"
|
||||
/>
|
||||
/>
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
<!-- ensure there is loads or memory for destinations -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
|
@ -101,18 +101,18 @@
|
|||
</memoryUsage>
|
||||
</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
|
||||
clients and other brokers. For more information, see:
|
||||
|
||||
http://activemq.apache.org/configuring-transports.html
|
||||
-->
|
||||
<transportConnectors>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
|
||||
</transportConnectors>
|
||||
|
||||
</broker>
|
||||
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -5,29 +5,29 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Create a static network of brokers
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
|
||||
|
||||
To run this example network of ActiveMQ brokers run
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-static-network-broker1.xml
|
||||
|
||||
|
||||
and
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-static-network-broker2.xml
|
||||
|
||||
|
||||
in separate consoles
|
||||
-->
|
||||
<beans
|
||||
|
@ -35,13 +35,13 @@
|
|||
xmlns:amq="http://activemq.apache.org/schema/core"
|
||||
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-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd">
|
||||
|
||||
<!-- Allows us to use system properties as variables in this configuration file -->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="static-broker1" dataDirectory="${activemq.base}/data">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="static-broker1" dataDirectory="${activemq.data}">
|
||||
|
||||
<!-- Destination specific policies using destination names or wildcards -->
|
||||
<destinationPolicy>
|
||||
|
@ -63,18 +63,18 @@
|
|||
<managementContext createConnector="true"/>
|
||||
</managementContext>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
The store and forward broker networks ActiveMQ will listen to.
|
||||
We'll leave it empty as duplex network will be configured by another broker
|
||||
Take a look at activemq-static_network-broker2.xml for example
|
||||
-->
|
||||
<networkConnectors>
|
||||
</networkConnectors>
|
||||
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/static-broker1/kahadb" />
|
||||
<kahaDB directory="${activemq.data}/static-broker1/kahadb" />
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
<!-- The maximum amount of space the broker will use before slowing down producers -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
|
@ -94,7 +94,7 @@
|
|||
<transportConnectors>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
|
||||
</transportConnectors>
|
||||
|
||||
|
||||
</broker>
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -5,29 +5,29 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Create a static network of brokers
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/networks-of-brokers.html
|
||||
|
||||
|
||||
To run this example network of ActiveMQ brokers run
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-static-network-broker1.xml
|
||||
|
||||
|
||||
and
|
||||
|
||||
|
||||
$ bin/activemq console xbean:conf/activemq-static-network-broker2.xml
|
||||
|
||||
|
||||
in separate consoles
|
||||
-->
|
||||
<beans
|
||||
|
@ -35,13 +35,13 @@
|
|||
xmlns:amq="http://activemq.apache.org/schema/core"
|
||||
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-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd
|
||||
http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd">
|
||||
|
||||
<!-- Allows us to use system properties as variables in this configuration file -->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="static-broker2" dataDirectory="${activemq.base}/data">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="static-broker2" dataDirectory="${activemq.data}">
|
||||
|
||||
<!-- Destination specific policies using destination names or wildcards -->
|
||||
<destinationPolicy>
|
||||
|
@ -63,18 +63,18 @@
|
|||
<managementContext createConnector="true" connectorPort="1100"/>
|
||||
</managementContext>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
The store and forward broker networks ActiveMQ will listen to
|
||||
Create a duplex connector to the first broker
|
||||
Create a duplex connector to the first broker
|
||||
-->
|
||||
<networkConnectors>
|
||||
<networkConnector uri="static:(tcp://localhost:61616)" duplex="true"/>
|
||||
</networkConnectors>
|
||||
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/static-broker2/kahadb" />
|
||||
<kahaDB directory="${activemq.data}/static-broker2/kahadb" />
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
<!-- The maximum amount of space the broker will use before slowing down producers -->
|
||||
<systemUsage>
|
||||
<systemUsage>
|
||||
|
@ -94,7 +94,7 @@
|
|||
<transportConnectors>
|
||||
<transportConnector name="openwire" uri="tcp://0.0.0.0:61618"/>
|
||||
</transportConnectors>
|
||||
|
||||
|
||||
</broker>
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -5,25 +5,25 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Use Stomp protocol
|
||||
|
||||
|
||||
For better behavior under heavy usage, be sure to:
|
||||
|
||||
1. Give broker enough memory
|
||||
|
||||
1. Give broker enough memory
|
||||
2. Disable dedicated task runner
|
||||
|
||||
|
||||
e.g. ACTIVEMQ_OPTS="-Xmx1024M -Dorg.apache.activemq.UseDedicatedTaskRunner=false"
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-stomp.xml to your command
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-stomp.xml
|
||||
-->
|
||||
|
@ -37,26 +37,26 @@
|
|||
<!-- 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:${activemq.base}/conf/credentials.properties</value>
|
||||
</property>
|
||||
<value>file:${activemq.conf}/credentials.properties</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
<!--
|
||||
The <broker> element is used to configure the ActiveMQ broker.
|
||||
-->
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data">
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">
|
||||
|
||||
<!--
|
||||
For better performances use VM cursor and small memory limit.
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/message-cursors.html
|
||||
|
||||
|
||||
Also, if your producer is "hanging", it's probably due to producer flow control.
|
||||
For more information, see:
|
||||
http://activemq.apache.org/producer-flow-control.html
|
||||
-->
|
||||
|
||||
|
||||
<destinationPolicy>
|
||||
<policyMap>
|
||||
<policyEntries>
|
||||
|
@ -68,9 +68,9 @@
|
|||
<policyEntry queue=">" producerFlowControl="false">
|
||||
<!-- Use VM cursor for better latency
|
||||
For more information, see:
|
||||
|
||||
|
||||
http://activemq.apache.org/message-cursors.html
|
||||
|
||||
|
||||
<pendingQueuePolicy>
|
||||
<vmQueueCursor/>
|
||||
</pendingQueuePolicy>
|
||||
|
@ -79,55 +79,55 @@
|
|||
</policyEntries>
|
||||
</policyMap>
|
||||
</destinationPolicy>
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
|
||||
|
||||
<!--
|
||||
The managementContext is used to configure how ActiveMQ is exposed in
|
||||
JMX. By default, ActiveMQ uses the MBean server that is started by
|
||||
the JVM. For more information, see:
|
||||
|
||||
http://activemq.apache.org/jmx.html
|
||||
-->
|
||||
<managementContext>
|
||||
<managementContext createConnector="false"/>
|
||||
</managementContext>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
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
|
||||
mechanism is the KahaDB store (identified by the kahaDB tag).
|
||||
For more information, see:
|
||||
|
||||
http://activemq.apache.org/persistence.html
|
||||
-->
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/kahadb"/>
|
||||
<kahaDB directory="${activemq.data}/kahadb"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
|
||||
<!--
|
||||
|
||||
|
||||
<!--
|
||||
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
|
||||
clients and other brokers. For more information, see:
|
||||
|
||||
http://activemq.apache.org/configuring-transports.html
|
||||
-->
|
||||
<transportConnectors>
|
||||
<transportConnector name="stomp" uri="stomp://0.0.0.0:61612?transport.closeAsync=false"/>
|
||||
<transportConnector name="stomp+nio" uri="stomp+nio://0.0.0.0:61613?transport.closeAsync=false"/>
|
||||
<transportConnector name="stomp" uri="stomp://0.0.0.0:61612?transport.closeAsync=false"/>
|
||||
<transportConnector name="stomp+nio" uri="stomp+nio://0.0.0.0:61613?transport.closeAsync=false"/>
|
||||
</transportConnectors>
|
||||
|
||||
</broker>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Uncomment to enable Camel
|
||||
Take a look at activemq-camel.xml for more details
|
||||
|
||||
|
||||
<import resource="camel.xml"/>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Enable web consoles, REST and Ajax APIs and demos
|
||||
Take a look at activemq-jetty.xml for more details
|
||||
Take a look at activemq-jetty.xml for more details
|
||||
-->
|
||||
<import resource="jetty.xml"/>
|
||||
|
||||
|
||||
</beans>
|
|
@ -5,22 +5,22 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!--
|
||||
<!--
|
||||
Tune ActiveMQ broker for high throughput of messages
|
||||
Be sure to make necessary changes in your producer and consumer, since there you can make the most notable difference
|
||||
|
||||
|
||||
For more information, see:
|
||||
http://activemq.apache.org/performance-tuning.html
|
||||
|
||||
|
||||
To run ActiveMQ with this configuration add xbean:conf/activemq-throughput.xml to your command
|
||||
e.g. $ bin/activemq console xbean:conf/activemq-throughput.xml
|
||||
-->
|
||||
|
@ -34,11 +34,11 @@
|
|||
<!-- Allows us to use system properties as variables in this configuration file -->
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.base}/data" useJmx="false" advisorySupport="false">
|
||||
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}" useJmx="false" advisorySupport="false">
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Use VM cursor
|
||||
For more information, see:
|
||||
For more information, see:
|
||||
http://activemq.apache.org/message-cursors.html
|
||||
-->
|
||||
<destinationPolicy>
|
||||
|
@ -56,21 +56,21 @@
|
|||
</policyEntry>
|
||||
</policyEntries>
|
||||
</policyMap>
|
||||
</destinationPolicy>
|
||||
</destinationPolicy>
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Use KahaDB for persistence
|
||||
Tune it a bit so we minimize IO operations
|
||||
For more information, see:
|
||||
For more information, see:
|
||||
http://activemq.apache.org/kahadb.html
|
||||
-->
|
||||
<persistenceAdapter>
|
||||
<kahaDB directory="${activemq.base}/data/kahadb" enableJournalDiskSyncs="false" indexWriteBatchSize="10000" indexCacheSize="1000"/>
|
||||
<kahaDB directory="${activemq.data}/kahadb" enableJournalDiskSyncs="false" indexWriteBatchSize="10000" indexCacheSize="1000"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
<!--
|
||||
Use TCP transport
|
||||
For more information, see:
|
||||
<!--
|
||||
Use TCP transport
|
||||
For more information, see:
|
||||
http://activemq.apache.org/configuring-transports.html
|
||||
-->
|
||||
<transportConnectors>
|
||||
|
@ -78,5 +78,5 @@
|
|||
</transportConnectors>
|
||||
|
||||
</broker>
|
||||
|
||||
|
||||
</beans>
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
|
@ -21,13 +21,13 @@
|
|||
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-2.0.xsd
|
||||
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
|
||||
|
||||
|
||||
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
|
||||
|
||||
<broker brokerName="broker" persistent="false" useJmx="false" xmlns="http://activemq.apache.org/schema/core">
|
||||
|
||||
<persistenceAdapter>
|
||||
<kahaPersistenceAdapter directory = "${activemq.home}/activemq-data"/>
|
||||
<kahaPersistenceAdapter directory = "${activemq.data}/kaha"/>
|
||||
</persistenceAdapter>
|
||||
|
||||
<transportConnectors>
|
||||
|
|
Loading…
Reference in New Issue