You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2015/08/13 06:14:04 UTC
[46/48] activemq-artemis git commit: renaming broker-features ->
features on examples
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-queue/pom.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-queue/pom.xml b/examples/broker-features/clustered/clustered-queue/pom.xml
deleted file mode 100644
index 78a8c8b..0000000
--- a/examples/broker-features/clustered/clustered-queue/pom.xml
+++ /dev/null
@@ -1,154 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>broker-clustered</artifactId>
- <version>1.0.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>clustered-queue</artifactId>
- <packaging>jar</packaging>
- <name>ActiveMQ Artemis JMS Clustered Queue Example</name>
-
- <properties>
- <activemq.basedir>${project.basedir}/../../../..</activemq.basedir>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-jms-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>create0</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server0</instance>
- <configuration>${basedir}/target/classes/activemq/server0</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create1</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server1</instance>
- <configuration>${basedir}/target/classes/activemq/server1</configuration>
- </configuration>
- </execution>
- <execution>
- <id>start0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server0</location>
- <testURI>tcp://localhost:61616</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server0</name>
- </configuration>
- </execution>
- <execution>
- <id>start1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server1</location>
- <testURI>tcp://localhost:61617</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server1</name>
- </configuration>
- </execution>
- <execution>
- <id>runClient</id>
- <goals>
- <goal>runClient</goal>
- </goals>
- <configuration>
- <clientClass>org.apache.activemq.artemis.jms.example.ClusteredQueueExample</clientClass>
- </configuration>
- </execution>
- <execution>
- <id>stop0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server0</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server1</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>clustered-queue</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-queue/readme.html
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-queue/readme.html b/examples/broker-features/clustered/clustered-queue/readme.html
deleted file mode 100644
index b5fce81..0000000
--- a/examples/broker-features/clustered/clustered-queue/readme.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<html>
- <head>
- <title>ActiveMQ Artemis JMS Load Balanced Clustered Queue Example</title>
- <link rel="stylesheet" type="text/css" href="../../../common/common.css" />
- <link rel="stylesheet" type="text/css" href="../../../common/prettify.css" />
- <script type="text/javascript" src="../../../common/prettify.js"></script>
- </head>
- <body onload="prettyPrint()">
- <h1>JMS Load Balanced Clustered Queue Example</h1>
-
- <pre>To run the example, simply type <b>mvn verify</b> from this directory, <br>or <b>mvn -PnoServer verify</b> if you want to start and create the server manually.</pre>
-
- <p>This example demonstrates a JMS queue deployed on two different nodes. The two nodes are configured to form a cluster.</p>
- <p>We then create a consumer on the queue on each node, and we create a producer on only one of the nodes.</p>
- <p>We then send some messages via the producer, and we verify that <b>both</b> consumers receive the sent messages
- in a round-robin fashion.</p>
- <p>In other words, ActiveMQ Artemis <b>load balances</b> the sent messages across all consumers on the cluster</p>
- <p>This example uses JNDI to lookup the JMS Queue and ConnectionFactory objects. If you prefer not to use
- JNDI, these could be instantiated directly.</p>
- <p>Here's the relevant snippet from the server configuration, which tells the server to form a cluster between the two nodes
- and to load balance the messages between the nodes.</p>
- <pre class="prettyprint">
- <code><cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <discovery-group-ref discovery-group-name="my-discovery-group"/>
- </cluster-connection>
- </code>
- </pre>
- <p>For more information on ActiveMQ Artemis load balancing, and clustering in general, please see the clustering
- section of the user manual.</p>
- </body>
-</html>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-queue/src/main/java/org/apache/activemq/artemis/jms/example/ClusteredQueueExample.java
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-queue/src/main/java/org/apache/activemq/artemis/jms/example/ClusteredQueueExample.java b/examples/broker-features/clustered/clustered-queue/src/main/java/org/apache/activemq/artemis/jms/example/ClusteredQueueExample.java
deleted file mode 100644
index f92514b..0000000
--- a/examples/broker-features/clustered/clustered-queue/src/main/java/org/apache/activemq/artemis/jms/example/ClusteredQueueExample.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * 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.
- */
-package org.apache.activemq.artemis.jms.example;
-
-import javax.jms.Connection;
-import javax.jms.ConnectionFactory;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageProducer;
-import javax.jms.Queue;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-
-import org.apache.activemq.artemis.api.jms.ActiveMQJMSClient;
-import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
-
-/**
- * A simple example that demonstrates server side load-balancing of messages between the queue instances on different
- * nodes of the cluster.
- */
-public class ClusteredQueueExample {
-
- public static void main(final String[] args) throws Exception {
- Connection connection0 = null;
-
- Connection connection1 = null;
-
- try {
- // Step 2. Instantiate the Queue
- Queue queue = ActiveMQJMSClient.createQueue("exampleQueue");
-
- // Instantiate connection towards server 0
- ConnectionFactory cf0 = new ActiveMQConnectionFactory("tcp://localhost:61616");
-
- // Step 5. Look-up a JMS Connection Factory object from JNDI on server 1
- ConnectionFactory cf1 = new ActiveMQConnectionFactory("tcp://localhost:61617");
-
- // Step 6. We create a JMS Connection connection0 which is a connection to server 0
- connection0 = cf0.createConnection();
-
- // Step 7. We create a JMS Connection connection1 which is a connection to server 1
- connection1 = cf1.createConnection();
-
- // Step 8. We create a JMS Session on server 0
- Session session0 = connection0.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 9. We create a JMS Session on server 1
- Session session1 = connection1.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 10. We start the connections to ensure delivery occurs on them
- connection0.start();
-
- connection1.start();
-
- // Step 11. We create JMS MessageConsumer objects on server 0 and server 1
- MessageConsumer consumer0 = session0.createConsumer(queue);
-
- MessageConsumer consumer1 = session1.createConsumer(queue);
-
- Thread.sleep(1000);
-
- // Step 12. We create a JMS MessageProducer object on server 0
- MessageProducer producer = session0.createProducer(queue);
-
- // Step 13. We send some messages to server 0
-
- final int numMessages = 10;
-
- for (int i = 0; i < numMessages; i++) {
- TextMessage message = session0.createTextMessage("This is text message " + i);
-
- producer.send(message);
-
- System.out.println("Sent message: " + message.getText());
- }
-
- // Step 14. We now consume those messages on *both* server 0 and server 1.
- // We note the messages have been distributed between servers in a round robin fashion
- // JMS Queues implement point-to-point message where each message is only ever consumed by a
- // maximum of one consumer
-
- for (int i = 0; i < numMessages; i += 2) {
- TextMessage message0 = (TextMessage) consumer0.receive(5000);
-
- System.out.println("Got message: " + message0.getText() + " from node 0");
-
- TextMessage message1 = (TextMessage) consumer1.receive(5000);
-
- System.out.println("Got message: " + message1.getText() + " from node 1");
- }
- }
- finally {
- // Step 15. Be sure to close our resources!
-
- if (connection0 != null) {
- connection0.close();
- }
-
- if (connection1 != null) {
- connection1.close();
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server0/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server0/broker.xml b/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server0/broker.xml
deleted file mode 100644
index eb30a90..0000000
--- a/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server0/broker.xml
+++ /dev/null
@@ -1,95 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
- <!-- Connectors -->
-
- <connectors>
- <connector name="netty-connector">tcp://localhost:61616</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61616</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <broadcast-groups>
- <broadcast-group name="my-broadcast-group">
- <group-address>${udp-address:231.7.7.7}</group-address>
- <group-port>9876</group-port>
- <broadcast-period>100</broadcast-period>
- <connector-ref>netty-connector</connector-ref>
- </broadcast-group>
- </broadcast-groups>
-
- <discovery-groups>
- <discovery-group name="my-discovery-group">
- <group-address>${udp-address:231.7.7.7}</group-address>
- <group-port>9876</group-port>
- <refresh-timeout>10000</refresh-timeout>
- </discovery-group>
- </discovery-groups>
-
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <discovery-group-ref discovery-group-name="my-discovery-group"/>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server1/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server1/broker.xml b/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server1/broker.xml
deleted file mode 100644
index 531fed1..0000000
--- a/examples/broker-features/clustered/clustered-queue/src/main/resources/activemq/server1/broker.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
-
- <bindings-directory>target/server1/data/messaging/bindings</bindings-directory>
-
- <journal-directory>target/server1/data/messaging/journal</journal-directory>
-
- <large-messages-directory>target/server1/data/messaging/largemessages</large-messages-directory>
-
- <paging-directory>target/server1/data/messaging/paging</paging-directory>
-
- <!-- Connectors -->
- <connectors>
- <connector name="netty-connector">tcp://localhost:61617</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61617</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <broadcast-groups>
- <broadcast-group name="my-broadcast-group">
- <group-address>${udp-address:231.7.7.7}</group-address>
- <group-port>9876</group-port>
- <broadcast-period>100</broadcast-period>
- <connector-ref>netty-connector</connector-ref>
- </broadcast-group>
- </broadcast-groups>
-
- <discovery-groups>
- <discovery-group name="my-discovery-group">
- <group-address>${udp-address:231.7.7.7}</group-address>
- <group-port>9876</group-port>
- <refresh-timeout>10000</refresh-timeout>
- </discovery-group>
- </discovery-groups>
-
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <discovery-group-ref discovery-group-name="my-discovery-group"/>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/pom.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/pom.xml b/examples/broker-features/clustered/clustered-static-discovery/pom.xml
deleted file mode 100644
index b3ce3c1..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/pom.xml
+++ /dev/null
@@ -1,239 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>broker-clustered</artifactId>
- <version>1.0.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>clustered-static-discovery</artifactId>
- <packaging>jar</packaging>
- <name>ActiveMQ Artemis JMS Clustered Static Discovery Example</name>
-
- <properties>
- <activemq.basedir>${project.basedir}/../../../..</activemq.basedir>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-cli</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-jms-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>create0</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server0</instance>
- <configuration>${basedir}/target/classes/activemq/server0</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create1</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server1</instance>
- <configuration>${basedir}/target/classes/activemq/server1</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create2</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server2</instance>
- <configuration>${basedir}/target/classes/activemq/server2</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create3</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server3</instance>
- <configuration>${basedir}/target/classes/activemq/server3</configuration>
- </configuration>
- </execution>
- <execution>
- <id>start0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server0</location>
- <testURI>tcp://localhost:61616</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server0</name>
- </configuration>
- </execution>
- <execution>
- <id>start1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <spawn>true</spawn>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server1</location>
- <testURI>tcp://localhost:61617</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server1</name>
- </configuration>
- </execution>
- <execution>
- <id>start2</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server2</location>
- <testURI>tcp://localhost:61618</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server2</name>
- </configuration>
- </execution>
- <execution>
- <id>start3</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server3</location>
- <testURI>tcp://localhost:61619</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server3</name>
- </configuration>
- </execution>
- <execution>
- <id>runClient</id>
- <goals>
- <goal>runClient</goal>
- </goals>
- <configuration>
- <clientClass>org.apache.activemq.artemis.jms.example.StaticClusteredQueueExample</clientClass>
- </configuration>
- </execution>
- <execution>
- <id>stop0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server0</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server1</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop2</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server2</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop3</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server3</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>clustered-static-discovery</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/readme.html
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/readme.html b/examples/broker-features/clustered/clustered-static-discovery/readme.html
deleted file mode 100644
index 88931b9..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/readme.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<html>
- <head>
- <title>ActiveMQ Artemis JMS Load Balanced Static Clustered Queue Example</title>
- <link rel="stylesheet" type="text/css" href="../../../common/common.css" />
- <link rel="stylesheet" type="text/css" href="../../../common/prettify.css" />
- <script type="text/javascript" src="../../../common/prettify.js"></script>
- </head>
- <body onload="prettyPrint()">
- <h1>JMS Load Balanced Static Clustered Queue Example</h1>
- <pre>To run the example, simply type <b>mvn verify</b> from this directory, <br>or <b>mvn -PnoServer verify</b> if you want to start and create the server manually.</pre>
-
- <p>This example demonstrates a JMS queue deployed on two different nodes. The two nodes are configured to form a cluster
- from a <em>static</em> list of nodes.</p>
- <p>We then create a consumer on the queue on each node, and we create a producer on only one of the nodes.</p>
- <p>We then send some messages via the producer, and we verify that <b>both</b> consumers receive the sent messages
- in a round-robin fashion.</p>
- <p>In other words, ActiveMQ Artemis <b>load balances</b> the sent messages across all consumers on the cluster</p>
- <p>This example uses JNDI to lookup the JMS Queue and ConnectionFactory objects. If you prefer not to use
- JNDI, these could be instantiated directly.</p>
- <p>Here's the relevant snippet from the server configuration, which tells the server to form a cluster between the two nodes
- and to load balance the messages between the nodes.</p>
- <pre class="prettyprint">
- <code><cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <static-connectors>
- <connector-ref>server1-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </code>
- </pre>
- <p>For more information on ActiveMQ Artemis load balancing, and clustering in general, please see the clustering
- section of the user manual.</p>
- </body>
-</html>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/src/main/java/org/apache/activemq/artemis/jms/example/StaticClusteredQueueExample.java
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/src/main/java/org/apache/activemq/artemis/jms/example/StaticClusteredQueueExample.java b/examples/broker-features/clustered/clustered-static-discovery/src/main/java/org/apache/activemq/artemis/jms/example/StaticClusteredQueueExample.java
deleted file mode 100644
index 453fafc..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/src/main/java/org/apache/activemq/artemis/jms/example/StaticClusteredQueueExample.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * 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.
- */
-package org.apache.activemq.artemis.jms.example;
-
-import javax.jms.Connection;
-import javax.jms.ConnectionFactory;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageProducer;
-import javax.jms.Queue;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-
-import org.apache.activemq.artemis.api.jms.ActiveMQJMSClient;
-import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
-import org.apache.activemq.artemis.util.ServerUtil;
-
-/**
- * A simple example that demonstrates server side load-balancing of messages between the queue instances on different
- * nodes of the cluster. The cluster is created from a static list of nodes.
- */
-public class StaticClusteredQueueExample {
-
- public static void main(final String[] args) throws Exception {
- Connection initialConnection = null;
-
- Connection connection0 = null;
-
- Connection connection1 = null;
-
- Connection connection2 = null;
-
- Connection connection3 = null;
-
- try {
- // Step 2. Use direct instantiation (or JNDI if you like)
- Queue queue = ActiveMQJMSClient.createQueue("exampleQueue");
-
- // Step 3. new JMS Connection Factory object from JNDI on server 3
- ConnectionFactory cf0 = new ActiveMQConnectionFactory("tcp://localhost:61619");
-
- //grab an initial connection and wait, in reality you wouldn't do it this way but since we want to ensure an
- // equal load balance we do this and then create 4 connections round robined
- initialConnection = cf0.createConnection();
-
- Thread.sleep(2000);
- // Step 6. We create a JMS Connection connection0 which is a connection to server 0
- connection0 = cf0.createConnection();
-
- // Step 7. We create a JMS Connection connection1 which is a connection to server 1
- connection1 = cf0.createConnection();
-
- // Step 6. We create a JMS Connection connection0 which is a connection to server 0
- connection2 = cf0.createConnection();
-
- // Step 7. We create a JMS Connection connection1 which is a connection to server 1
- connection3 = cf0.createConnection();
-
- // Step 8. We create a JMS Session on server 0
- Session session0 = connection0.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 9. We create a JMS Session on server 1
- Session session1 = connection1.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 8. We create a JMS Session on server 0
- Session session2 = connection2.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 9. We create a JMS Session on server 1
- Session session3 = connection3.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 10. We start the connections to ensure delivery occurs on them
- connection0.start();
-
- connection1.start();
-
- connection2.start();
-
- connection3.start();
-
- // Step 11. We create JMS MessageConsumer objects on server 0 and server 1
- MessageConsumer consumer0 = session0.createConsumer(queue);
-
- MessageConsumer consumer1 = session1.createConsumer(queue);
-
- MessageConsumer consumer2 = session2.createConsumer(queue);
-
- MessageConsumer consumer3 = session3.createConsumer(queue);
-
- Thread.sleep(2000);
-
- // Step 12. We create a JMS MessageProducer object on server 3
- MessageProducer producer = session3.createProducer(queue);
-
- // Step 13. We send some messages to server 0
-
- final int numMessages = 20;
-
- for (int i = 0; i < numMessages; i++) {
- TextMessage message = session0.createTextMessage("This is text message " + i);
-
- producer.send(message);
-
- System.out.println("Sent message: " + message.getText());
- }
- Thread.sleep(2000);
- // Step 14. We now consume those messages on *both* server 0 and server 1.
- // We note the messages have been distributed between servers in a round robin fashion
- // JMS Queues implement point-to-point message where each message is only ever consumed by a
- // maximum of one consumer
- int con0Node = ServerUtil.getServer(connection0);
- int con1Node = ServerUtil.getServer(connection1);
- int con2Node = ServerUtil.getServer(connection2);
- int con3Node = ServerUtil.getServer(connection3);
-
- if (con0Node + con1Node + con2Node + con3Node != 6) {
- throw new IllegalStateException();
- }
- for (int i = 0; i < numMessages; i += 4) {
- TextMessage message0 = (TextMessage) consumer0.receive(5000);
-
- System.out.println("Got message: " + message0.getText() + " from node " + con0Node);
-
- TextMessage message1 = (TextMessage) consumer1.receive(5000);
-
- System.out.println("Got message: " + message1.getText() + " from node " + con1Node);
-
- TextMessage message2 = (TextMessage) consumer2.receive(5000);
-
- System.out.println("Got message: " + message2.getText() + " from node " + con2Node);
-
- TextMessage message3 = (TextMessage) consumer3.receive(5000);
-
- System.out.println("Got message: " + message3.getText() + " from node " + con3Node);
- }
- }
- finally {
- // Step 15. Be sure to close our resources!
-
- if (initialConnection != null) {
- initialConnection.close();
- }
-
- if (connection0 != null) {
- connection0.close();
- }
-
- if (connection1 != null) {
- connection1.close();
- }
-
- if (connection2 != null) {
- connection2.close();
- }
-
- if (connection3 != null) {
- connection3.close();
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server0/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server0/broker.xml b/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server0/broker.xml
deleted file mode 100644
index b1bfd11..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server0/broker.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
-
- <connectors>
- <connector name="netty-connector">tcp://localhost:61616</connector>
- <!-- connector to the server1 -->
- <connector name="server1-connector">tcp://localhost:61617</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61616</acceptor>
- </acceptors>
-
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <static-connectors>
- <connector-ref>server1-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server1/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server1/broker.xml b/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server1/broker.xml
deleted file mode 100644
index 0412576..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server1/broker.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
- <connectors>
- <connector name="netty-connector">tcp://localhost:61617</connector>
- <!-- connector to the server0 -->
- <connector name="server0-connector">tcp://localhost:61616</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61617</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <static-connectors>
- <connector-ref>server0-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server2/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server2/broker.xml b/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server2/broker.xml
deleted file mode 100644
index 98b8f04..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server2/broker.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one or more
- ~ contributor license agreements. See the NOTICE file distributed with
- ~ this work for additional information regarding copyright ownership.
- ~ 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.
- -->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
- <connectors>
- <connector name="netty-connector">tcp://localhost:61618</connector>
- <!-- connector to the server0 -->
- <connector name="server0-connector">tcp://localhost:61616</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61618</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <static-connectors>
- <connector-ref>server0-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server3/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server3/broker.xml b/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server3/broker.xml
deleted file mode 100644
index 40bef87..0000000
--- a/examples/broker-features/clustered/clustered-static-discovery/src/main/resources/activemq/server3/broker.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one or more
- ~ contributor license agreements. See the NOTICE file distributed with
- ~ this work for additional information regarding copyright ownership.
- ~ 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.
- -->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
- <connectors>
- <connector name="netty-connector">tcp://localhost:61619</connector>
- <!-- connector to the server0 -->
- <connector name="server0-connector">tcp://localhost:61616</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61619</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>1</max-hops>
- <static-connectors>
- <connector-ref>server0-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-oneway/pom.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-oneway/pom.xml b/examples/broker-features/clustered/clustered-static-oneway/pom.xml
deleted file mode 100644
index 18a303c..0000000
--- a/examples/broker-features/clustered/clustered-static-oneway/pom.xml
+++ /dev/null
@@ -1,198 +0,0 @@
-<?xml version='1.0'?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>broker-clustered</artifactId>
- <version>1.0.1-SNAPSHOT</version>
- </parent>
-
- <artifactId>clustered-static-oneway</artifactId>
- <packaging>jar</packaging>
- <name>ActiveMQ Artemis JMS Clustered Static One Way Example</name>
-
- <properties>
- <activemq.basedir>${project.basedir}/../../../..</activemq.basedir>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-cli</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-jms-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>create0</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server0</instance>
- <configuration>${basedir}/target/classes/activemq/server0</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create1</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server1</instance>
- <configuration>${basedir}/target/classes/activemq/server1</configuration>
- </configuration>
- </execution>
- <execution>
- <id>create2</id>
- <goals>
- <goal>create</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <instance>${basedir}/target/server2</instance>
- <configuration>${basedir}/target/classes/activemq/server2</configuration>
- </configuration>
- </execution>
- <execution>
- <id>start0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server0</location>
- <testURI>tcp://localhost:61616</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server0</name>
- </configuration>
- </execution>
- <execution>
- <id>start1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server1</location>
- <testURI>tcp://localhost:61617</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server1</name>
- </configuration>
- </execution>
- <execution>
- <id>start2</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <spawn>true</spawn>
- <location>${basedir}/target/server2</location>
- <testURI>tcp://localhost:61618</testURI>
- <args>
- <param>run</param>
- </args>
- <name>server2</name>
- </configuration>
- </execution>
- <execution>
- <id>runClient</id>
- <goals>
- <goal>runClient</goal>
- </goals>
- <configuration>
- <clientClass>org.apache.activemq.artemis.jms.example.ClusterStaticOnewayExample</clientClass>
- </configuration>
- </execution>
- <execution>
- <id>stop0</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server0</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop1</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server1</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- <execution>
- <id>stop2</id>
- <goals>
- <goal>cli</goal>
- </goals>
- <configuration>
- <ignore>${noServer}</ignore>
- <location>${basedir}/target/server2</location>
- <args>
- <param>stop</param>
- </args>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>org.apache.activemq.examples.clustered</groupId>
- <artifactId>clustered-static-oneway</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
-</project>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-oneway/readme.html
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-oneway/readme.html b/examples/broker-features/clustered/clustered-static-oneway/readme.html
deleted file mode 100644
index 04334a5..0000000
--- a/examples/broker-features/clustered/clustered-static-oneway/readme.html
+++ /dev/null
@@ -1,64 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. 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.
--->
-
-<html>
- <head>
- <title>ActiveMQ Artemis JMS Load Balanced Static Clustered Queue Example</title>
- <link rel="stylesheet" type="text/css" href="../../../common/common.css" />
- <link rel="stylesheet" type="text/css" href="../../../common/prettify.css" />
- <script type="text/javascript" src="../../../common/prettify.js"></script>
- </head>
- <body onload="prettyPrint()">
- <h1>JMS Load Balanced Static Clustered One Way Queue Example</h1>
- <pre>To run the example, simply type <b>mvn verify</b> from this directory, <br>or <b>mvn -PnoServer verify</b> if you want to start and create the server manually.</pre>
-
- <p>This example demonstrates a JMS queue deployed on three different nodes. The three nodes are configured to form a one way cluster
- from a <em>static</em> list of nodes. </p>
- <p>A one way cluster is different from a symmetrical cluster in that each node is only connected to one another node in
- a chain type fashion, so server 0 -> server 1 -> server 2</p>
- <p>We then create a consumer on the queue on each node, and we create a producer on only one of the nodes.</p>
- <p>We then send some messages via the producer, and we verify that <b>all</b> consumers receive the sent messages
- in a round-robin fashion.</p>
- <p>In other words, ActiveMQ Artemis <b>load balances</b> the sent messages across all consumers on the cluster</p>
- <p>This example uses JNDI to lookup the JMS Queue and ConnectionFactory objects. If you prefer not to use
- JNDI, these could be instantiated directly.</p>
- <p>Here's the relevant snippet from the server configuration, which tells the server to form a one way cluster between the three nodes
- and to load balance the messages between the nodes. Note that we have set <em>allow-direct-connections-only</em> to true,
- this means that this server will only ever connect the address's specified in the list of connectors. ALso notice
- that <em>max-hops</em> is 2, this is because server 0 is not directly connected to server 2, 2 hops in fact, so we
- allow any updates from servers up to 2 hops away</p>
- <pre class="prettyprint">
- <code>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>2</max-hops>
- <static-connectors allow-direct-connections-only="true">
- <connector-ref>server1-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </code>
- </pre>
- <p>For more information on ActiveMQ Artemis load balancing, and clustering in general, please see the clustering
- section of the user manual.</p>
- </body>
-</html>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-oneway/src/main/java/org/apache/activemq/artemis/jms/example/ClusterStaticOnewayExample.java
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-oneway/src/main/java/org/apache/activemq/artemis/jms/example/ClusterStaticOnewayExample.java b/examples/broker-features/clustered/clustered-static-oneway/src/main/java/org/apache/activemq/artemis/jms/example/ClusterStaticOnewayExample.java
deleted file mode 100644
index 0397907..0000000
--- a/examples/broker-features/clustered/clustered-static-oneway/src/main/java/org/apache/activemq/artemis/jms/example/ClusterStaticOnewayExample.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * 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.
- */
-package org.apache.activemq.artemis.jms.example;
-
-import javax.jms.Connection;
-import javax.jms.ConnectionFactory;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageProducer;
-import javax.jms.Queue;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-
-import org.apache.activemq.artemis.api.jms.ActiveMQJMSClient;
-import org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory;
-import org.apache.activemq.artemis.util.ServerUtil;
-
-/**
- * A simple example that demonstrates server side load-balancing of messages between the queue instances on different
- * nodes of the cluster. The cluster is created from a static list of nodes.
- */
-public class ClusterStaticOnewayExample {
-
- public static void main(final String[] args) throws Exception {
- Connection initialConnection = null;
-
- Connection connection0 = null;
-
- Connection connection1 = null;
-
- Connection connection2 = null;
-
- try {
- // Step 2. Instantiate Queue
- Queue queue = ActiveMQJMSClient.createQueue("exampleQueue");
-
- // Step 3. Look-up a JMS Connection Factory object from JNDI on server 0
- ConnectionFactory cf0 = new ActiveMQConnectionFactory("tcp://localhost:61616");
-
- //step 4. grab an initial connection and wait, in reality you wouldn't do it this way but since we want to ensure an
- // equal load balance we do this and then create 4 connections round robined
- initialConnection = cf0.createConnection();
-
- Thread.sleep(2000);
- // Step 5. We create a JMS Connection connection0 which is a connection to server 0
- connection0 = cf0.createConnection();
-
- // Step 6. We create a JMS Connection connection1 which is a connection to server 1
- connection1 = cf0.createConnection();
-
- // Step 7. We create a JMS Connection connection0 which is a connection to server 2
- connection2 = cf0.createConnection();
-
- // Step 8. We create a JMS Session on server 0
- Session session0 = connection0.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 9. We create a JMS Session on server 1
- Session session1 = connection1.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 10. We create a JMS Session on server 2
- Session session2 = connection2.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- // Step 11. We start the connections to ensure delivery occurs on them
- connection0.start();
-
- connection1.start();
-
- connection2.start();
-
- // Step 12. We create JMS MessageConsumer objects on server 0,server 1 and server 2
- MessageConsumer consumer0 = session0.createConsumer(queue);
-
- MessageConsumer consumer1 = session1.createConsumer(queue);
-
- MessageConsumer consumer2 = session2.createConsumer(queue);
-
- Thread.sleep(4000);
-
- int con0Node = ServerUtil.getServer(connection0);
- int con1Node = ServerUtil.getServer(connection1);
- int con2Node = ServerUtil.getServer(connection2);
-
- System.out.println("con0Node = " + con0Node);
- System.out.println("con1Node = " + con1Node);
- System.out.println("con2Node = " + con2Node);
-
- if (con0Node + con1Node + con2Node != 3) {
- throw new IllegalStateException("connections not load balanced");
- }
- // Step 13. We create a JMS MessageProducer object on server 0
- Session sendSession = ServerUtil.getServerConnection(0, connection0, connection1, connection2).createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- MessageProducer producer = sendSession.createProducer(queue);
-
- // Step 14. We send some messages to server 0
-
- final int numMessages = 18;
-
- for (int i = 0; i < numMessages; i++) {
- TextMessage message = session0.createTextMessage("This is text message " + i);
-
- producer.send(message);
-
- System.out.println("Sent message: " + message.getText());
- }
- Thread.sleep(2000);
- // Step 15. We now consume those messages on *both* server 0,server 1 and 2.
- // We note the messages have been distributed between servers in a round robin fashion
- // JMS Queues implement point-to-point message where each message is only ever consumed by a
- // maximum of one consumer
-
- for (int i = 0; i < numMessages; i += 3) {
- TextMessage message0 = (TextMessage) consumer0.receive(5000);
-
- System.out.println("Got message: " + message0.getText() + " from node " + con0Node);
-
- TextMessage message1 = (TextMessage) consumer1.receive(5000);
-
- System.out.println("Got message: " + message1.getText() + " from node " + con1Node);
-
- TextMessage message2 = (TextMessage) consumer2.receive(5000);
-
- System.out.println("Got message: " + message2.getText() + " from node " + con2Node);
- }
- }
- finally {
- // Step 15. Be sure to close our resources!
-
- if (initialConnection != null) {
- initialConnection.close();
- }
-
- if (connection0 != null) {
- connection0.close();
- }
-
- if (connection1 != null) {
- connection1.close();
- }
-
- if (connection2 != null) {
- connection2.close();
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server0/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server0/broker.xml b/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server0/broker.xml
deleted file mode 100644
index 3e86ed3..0000000
--- a/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server0/broker.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one or more
- ~ contributor license agreements. See the NOTICE file distributed with
- ~ this work for additional information regarding copyright ownership.
- ~ 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.
- -->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
-
- <connectors>
- <connector name="netty-connector">tcp://localhost:61616</connector>
- <!-- connector to the server1 -->
- <connector name="server1-connector">tcp://localhost:61617</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61616</acceptor>
- </acceptors>
-
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>2</max-hops>
- <static-connectors allow-direct-connections-only="true">
- <connector-ref>server1-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/6b17d966/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server1/broker.xml
----------------------------------------------------------------------
diff --git a/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server1/broker.xml b/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server1/broker.xml
deleted file mode 100644
index 1464ea9..0000000
--- a/examples/broker-features/clustered/clustered-static-oneway/src/main/resources/activemq/server1/broker.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one or more
- ~ contributor license agreements. See the NOTICE file distributed with
- ~ this work for additional information regarding copyright ownership.
- ~ 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.
- -->
-
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="urn:activemq"
- xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
-
- <jms xmlns="urn:activemq:jms">
- <!--the queue used by the example-->
- <queue name="exampleQueue"/>
- </jms>
-
- <core xmlns="urn:activemq:core">
-
- <bindings-directory>./data/bindings</bindings-directory>
-
- <journal-directory>./data/journal</journal-directory>
-
- <large-messages-directory>./data/largemessages</large-messages-directory>
-
- <paging-directory>./data/paging</paging-directory>
-
- <!-- Connectors -->
- <connectors>
- <connector name="netty-connector">tcp://localhost:61617</connector>
- <!-- connector to the server0 -->
- <connector name="server2-connector">tcp://localhost:61618</connector>
- </connectors>
-
- <!-- Acceptors -->
- <acceptors>
- <acceptor name="netty-acceptor">tcp://localhost:61617</acceptor>
- </acceptors>
-
- <!-- Clustering configuration -->
- <cluster-connections>
- <cluster-connection name="my-cluster">
- <address>jms</address>
- <connector-ref>netty-connector</connector-ref>
- <retry-interval>500</retry-interval>
- <use-duplicate-detection>true</use-duplicate-detection>
- <message-load-balancing>STRICT</message-load-balancing>
- <max-hops>2</max-hops>
- <static-connectors allow-direct-connections-only="true">
- <connector-ref>server2-connector</connector-ref>
- </static-connectors>
- </cluster-connection>
- </cluster-connections>
-
- <!-- Other config -->
-
- <security-settings>
- <!--security for example queue-->
- <security-setting match="jms.queue.exampleQueue">
- <permission type="createDurableQueue" roles="guest"/>
- <permission type="deleteDurableQueue" roles="guest"/>
- <permission type="createNonDurableQueue" roles="guest"/>
- <permission type="deleteNonDurableQueue" roles="guest"/>
- <permission type="consume" roles="guest"/>
- <permission type="send" roles="guest"/>
- </security-setting>
- </security-settings>
-
- </core>
-</configuration>