You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2014/11/10 17:32:58 UTC
[47/51] [partial] activemq-6 git commit: ACTIVEMQ6-1 - Initial
HornetQ Donation Commit
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/HornetQ_EAP_Manual.xml
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/HornetQ_EAP_Manual.xml b/docs/eap-manual/en/HornetQ_EAP_Manual.xml
new file mode 100644
index 0000000..296057b
--- /dev/null
+++ b/docs/eap-manual/en/HornetQ_EAP_Manual.xml
@@ -0,0 +1,24 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+ ~ Copyright 2009 Red Hat, Inc.
+ ~ Red Hat 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.
+ -->
+
+<!-- This document was created with Syntext Serna Free. -->
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_EAP_Manual.ent">
+%BOOK_ENTITIES;
+
+]>
+<book>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Book_Info.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="clusters.xml"/>
+</book>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/clusters.xml
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/clusters.xml b/docs/eap-manual/en/clusters.xml
new file mode 100644
index 0000000..db38cdd
--- /dev/null
+++ b/docs/eap-manual/en/clusters.xml
@@ -0,0 +1,569 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Copyright 2009 Red Hat, Inc.
+ ~ Red Hat 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.
+ -->
+
+<chapter id="clusters">
+ <title>HornetQ and EAP Cluster Configuration</title>
+ <section>
+ <title>Configuring Failover</title>
+ <para>
+ This chapter explains how to configure HornetQ within EAP with live backup-groups. Currently in this version
+ HornetQ only supports shared store for backup nodes so we assume that in the rest of this chapter.
+ </para>
+ <para>There are 2 main ways to configure HornetQ servers to have a backup server:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Colocated. This is when an EAP instance has both a live and backup(s) running.</para>
+ </listitem>
+ <listitem>
+ <para>Dedicated. This is when an EAP instance has either a live or backup running but never both.</para>
+ </listitem>
+ </itemizedlist>
+ <section>
+ <title>Colocated Live and Backup in Symmetrical cluster</title>
+ <para>
+ The colocated symmetrical topology will be the most widely used topology, this is where an EAP instance has
+ a live node running plus 1 or more backup node. Each backup node will belong to a live node on another EAP
+ instance. In a simple cluster of 2
+ EAP instances this would mean that each EAP instance would have a live server and 1 backup server as in
+ diagram1.
+ </para>
+ <para>
+ <graphic fileref="images/simple-colocated.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <para>
+ Here the continuous lines show before failover and the dotted lines show the state of the cluster after
+ failover has occurred. To start with the 2 live servers are connected forming a cluster with each live server
+ connected to its local applications (via JCA). Also remote clients are connected to the live servers. After
+ failover the backup connects to the still available live server (which happens to be in the same vm) and takes
+ over as the live server in the cluster. Any remote clients also failover.
+ </para>
+ <para>
+ One thing to mention is that in that depending on what consumers/producers and MDB's etc are available messages
+ will be distributed between the nodes to make sure that all clients are satisfied from a JMS perspective. That is
+ if a producer is sending messages to a queue on a backup server that has no consumers, the messages will be
+ distributed to a live node elsewhere.
+ </para>
+ <para>
+ The following diagram is slightly more complex but shows the same configuration with 3 servers. Note that the
+ cluster connections ave been removed to make the configuration clearer but in reality all live servers will
+ form a cluster.
+ </para>
+ <para>
+ <graphic fileref="images/simple-colocated2.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <para>
+ With more than 2 servers it is up to the user as to how many backups per live server are configured, you can
+ have
+ as many backups as required but usually 1 would suffice. In 3 node topology you may have each EAP instance
+ configured
+ with 2 backups in a 4 node 3 backups and so on. The following diagram demonstrates this.
+ </para>
+ <para>
+ <graphic fileref="images/simple-colocated3.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <section>
+ <title>Configuration</title>
+ <section>
+ <title>Live Server Configuration</title>
+ <para>
+ First let's start with the configuration of the live server, we will use the EAP 'all' configuration as
+ our starting point. Since this version only supports shared store for failover we need to configure
+ this in the
+ <literal>hornetq-configuration.xml</literal>
+ file like so:
+ </para>
+ <programlisting>
+ <shared-store>true</shared-store>
+ </programlisting>
+ <para>
+ Obviously this means that the location of the journal files etc will have to be configured to be some
+ where
+ where
+ this lives backup can access. You may change the lives configuration in
+ <literal>hornetq-configuration.xml</literal>
+ to
+ something like:
+ </para>
+ <programlisting>
+ <large-messages-directory>/media/shared/data/large-messages</large-messages-directory>
+ <bindings-directory>/media/shared/data/bindings</bindings-directory>
+ <journal-directory>/media/shared/data/journal</journal-directory>
+ <paging-directory>/media/shared/data/paging</paging-directory>
+ </programlisting>
+ <para>
+ How these paths are configured will of course depend on your network settings or file system.
+ </para>
+ <para>
+ Now we need to configure how remote JMS clients will behave if the server is shutdown in a normal
+ fashion.
+ By
+ default
+ Clients will not failover if the live server is shutdown. Depending on there connection factory
+ settings
+ they will either fail or try to reconnect to the live server.
+ </para>
+ <para>If you want clients to failover on a normal server shutdown the you must configure the
+ <literal>failover-on-shutdown</literal>
+ flag to true in the
+ <literal>hornetq-configuration.xml</literal>
+ file like so:
+ </para>
+ <programlisting>
+ <failover-on-shutdown>false</failover-on-shutdown>
+ </programlisting>
+ <para>Don't worry if you have this set to false (which is the default) but still want failover to occur,
+ simply
+ kill
+ the
+ server process directly or call
+ <literal>forceFailover</literal>
+ via jmx or the admin console on the core server object.
+ </para>
+ <para>We also need to configure the connection factories used by the client to be HA. This is done by
+ adding
+ certain attributes to the connection factories in<literal>hornetq-jms.xml</literal>. Let's look at an
+ example:
+ </para>
+ <programlisting>
+ <connection-factory name="NettyConnectionFactory">
+ <xa>true</xa>
+ <connectors>
+ <connector-ref connector-name="netty"/>
+ </connectors>
+ <entries>
+ <entry name="/ConnectionFactory"/>
+ <entry name="/XAConnectionFactory"/>
+ </entries>
+
+ <ha>true</ha>
+ <!-- Pause 1 second between connect attempts -->
+ <retry-interval>1000</retry-interval>
+
+ <!-- Multiply subsequent reconnect pauses by this multiplier. This can be used to
+ implement an exponential back-off. For our purposes we just set to 1.0 so each reconnect
+ pause is the same length -->
+ <retry-interval-multiplier>1.0</retry-interval-multiplier>
+
+ <!-- Try reconnecting an unlimited number of times (-1 means "unlimited") -->
+ <reconnect-attempts>-1</reconnect-attempts>
+ </connection-factory>
+
+ </programlisting>
+ <para>We have added the following attributes to the connection factory used by the client:</para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal>ha</literal>
+ - This tells the client it support HA and must always be true for failover
+ to occur
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>retry-interval</literal>
+ - this is how long the client will wait after each unsuccessful
+ reconnect to the server
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>retry-interval-multiplier</literal>
+ - is used to configure an exponential back off for
+ reconnect attempts
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <literal>reconnect-attempts</literal>
+ - how many reconnect attempts should a client make before failing,
+ -1 means unlimited.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section>
+ <title>Backup Server Configuration</title>
+ <para>
+ Now let's look at how to create and configure a backup server on the same eap instance. This is running
+ on the same eap instance as the live server from the previous chapter but is configured as the backup
+ for a live server running on a different eap instance.
+ </para>
+ <para>
+ The first thing to mention is that the backup only needs a <literal>hornetq-jboss-beans.xml</literal>
+ and a <literal>hornetq-configuration.xml</literal> configuration file. This is because any JMS components
+ are created from the Journal when the backup server becomes live.
+ </para>
+ <para>
+ Firstly we need to define a new HornetQ Server that EAP will deploy. We do this by creating a new
+ <literal>hornetq-jboss-beans.xml</literal>
+ configuration. We will place this under a new directory
+ <literal>hornetq-backup1</literal>
+ which will need creating
+ in the
+ <literal>deploy</literal>
+ directory but in reality it doesn't matter where this is put. This will look like:
+ </para>
+ <programlisting>
+ <?xml version="1.0" encoding="UTF-8"?>
+
+ <deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <!-- The core configuration -->
+ <bean name="BackupConfiguration" class="org.hornetq.core.config.impl.FileConfiguration">
+ <property
+ name="configurationUrl">${jboss.server.home.url}/deploy/hornetq-backup1/hornetq-configuration.xml</property>
+ </bean>
+
+
+ <!-- The core server -->
+ <bean name="BackupHornetQServer" class="org.hornetq.core.server.impl.HornetQServerImpl">
+ <constructor>
+ <parameter>
+ <inject bean="BackupConfiguration"/>
+ </parameter>
+ <parameter>
+ <inject bean="MBeanServer"/>
+ </parameter>
+ <parameter>
+ <inject bean="HornetQSecurityManager"/>
+ </parameter>
+ </constructor>
+ <start ignored="true"/>
+ <stop ignored="true"/>
+ </bean>
+
+ <!-- The JMS server -->
+ <bean name="BackupJMSServerManager" class="org.hornetq.jms.server.impl.JMSServerManagerImpl">
+ <constructor>
+ <parameter>
+ <inject bean="BackupHornetQServer"/>
+ </parameter>
+ </constructor>
+ </bean>
+
+ </deployment>
+ </programlisting>
+ <para>
+ The first thing to notice is the BackupConfiguration bean. This is configured to pick up the
+ configuration
+ for
+ the
+ server which we will place in the same directory.
+ </para>
+ <para>
+ After that we just configure a new HornetQ Server and JMS server.
+ </para>
+ <note>
+ <para>
+ Notice that the names of the beans have been changed from that of the live servers configuration.
+ This
+ is
+ so
+ there is no clash. Obviously if you add more backup servers you will need to rename those as well,
+ backup1,
+ backup2 etc.
+ </para>
+ </note>
+ <para>
+ Now let's add the server configuration in
+ <literal>hornetq-configuration.xml</literal>
+ and add it to the same directory
+ <literal>deploy/hornetq-backup1</literal>
+ and configure it like so:
+ </para>
+ <programlisting>
+ <configuration xmlns="urn:hornetq"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="urn:hornetq /schema/hornetq-configuration.xsd">
+
+ <jmx-domain>org.hornetq.backup1</jmx-domain>
+
+ <clustered>true</clustered>
+
+ <backup>true</backup>
+
+ <shared-store>true</shared-store>
+
+ <allow-failback>true</allow-failback>
+
+ <bindings-directory>/media/shared/data/hornetq-backup/bindings</bindings-directory>
+
+ <journal-directory>/media/shared/data/hornetq-backup/journal</journal-directory>
+
+ <journal-min-files>10</journal-min-files>
+
+ <large-messages-directory>/media/shared/data/hornetq-backup/largemessages</large-messages-directory>
+
+ <paging-directory>/media/shared/data/hornetq-backup/paging</paging-directory>
+
+ <connectors>
+ <connector name="netty-connector">
+ <factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</factory-class>
+ <param key="host" value="${jboss.bind.address:localhost}"/>
+ <param key="port" value="${hornetq.remoting.backup.netty.port:5446}"/>
+ </connector>
+
+ <connector name="in-vm">
+ <factory-class>org.hornetq.core.remoting.impl.invm.InVMConnectorFactory</factory-class>
+ <param key="server-id" value="${hornetq.server-id:0}"/>
+ </connector>
+
+ </connectors>
+
+ <acceptors>
+ <acceptor name="netty">
+ <factory-class>org.hornetq.core.remoting.impl.netty.NettyAcceptorFactory</factory-class>
+ <param key="host" value="${jboss.bind.address:localhost}"/>
+ <param key="port" value="${hornetq.remoting.backup.netty.port:5446}"/>
+ </acceptor>
+ </acceptors>
+
+ <broadcast-groups>
+ <broadcast-group name="bg-group1">
+ <group-address>231.7.7.7</group-address>
+ <group-port>9876</group-port>
+ <broadcast-period>1000</broadcast-period>
+ <connector-ref>netty-connector</connector-ref>
+ </broadcast-group>
+ </broadcast-groups>
+
+ <discovery-groups>
+ <discovery-group name="dg-group1">
+ <group-address>231.7.7.7</group-address>
+ <group-port>9876</group-port>
+ <refresh-timeout>60000</refresh-timeout>
+ </discovery-group>
+ </discovery-groups>
+
+ <cluster-connections>
+ <cluster-connection name="my-cluster">
+ <address>jms</address>
+ <connector-ref>netty-connector</connector-ref>
+ <discovery-group-ref discovery-group-name="dg-group1"/>
+ <!--max hops defines how messages are redistributed, the default is 1 meaning only distribute to directly
+ connected nodes, to disable set to 0-->
+ <!--<max-hops>0</max-hops>-->
+ </cluster-connection>
+ </cluster-connections>
+
+ <security-settings>
+ <security-setting match="#">
+ <permission type="createNonDurableQueue" roles="guest"/>
+ <permission type="deleteNonDurableQueue" roles="guest"/>
+ <permission type="consume" roles="guest"/>
+ <permission type="send" roles="guest"/>
+ </security-setting>
+ </security-settings>
+
+ <address-settings>
+ <!--default for catch all-->
+ <address-setting match="#">
+ <dead-letter-address>jms.queue.DLQ</dead-letter-address>
+ <expiry-address>jms.queue.ExpiryQueue</expiry-address>
+ <redelivery-delay>0</redelivery-delay>
+ <max-size-bytes>10485760</max-size-bytes>
+ <message-counter-history-day-limit>10</message-counter-history-day-limit>
+ <address-full-policy>BLOCK</address-full-policy>
+ </address-setting>
+ </address-settings>
+
+ </configuration>
+
+ </programlisting>
+ <para>
+ The second thing you can see is we have added a
+ <literal>jmx-domain</literal>
+ attribute, this is used when
+ adding objects, such as the HornetQ server and JMS server to jmx, we change this from the default
+ <literal>org.hornetq</literal>
+ to avoid naming clashes with the live server
+ </para>
+ <para>
+ The first important part of the configuration is to make sure that this server starts as a backup
+ server not
+ a live server, via the
+ <literal>backup</literal>
+ attribute.
+ </para>
+ <para>
+ After that we have the same cluster configuration as live, that is
+ <literal>clustered</literal>
+ is true and
+ <literal>shared-store</literal>
+ is true. However you can see we have added a new configuration element
+ <literal>allow-failback</literal>. When this is set to true then this backup server will automatically
+ stop
+ and fall back into backup node if failover occurs and the live server has become available. If false
+ then
+ the user will have to stop the server manually.
+ </para>
+ <para>
+ Next we can see the configuration for the journal location, as in the live configuration this must
+ point to
+ the same directory as this backup's live server.
+ </para>
+ <para>
+ Now we see the connectors configuration, we have 3 defined which are needed for the following
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal>netty-connector.</literal>
+ This is the connector used to connect to this backup server once live.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>After that you will see the acceptors defined, This is the acceptor where clients will reconnect.
+ </para>
+ <para>
+ The Broadcast groups, Discovery group and cluster configurations are as per normal, details of these
+ can be found in the HornetQ user manual.
+ </para>
+ <note>
+ <para>notice the commented out <literal>max-hops</literal> in the cluster connection, set this to 0 if
+ you want to disable server side load balancing.</para>
+ </note>
+ <para>
+ When the backup becomes it will be not be servicing any JEE components on this eap instance. Instead any
+ existing messages will be redistributed around the cluster and new messages forwarded to and from the backup
+ to service any remote clients it has (if it has any).
+ </para>
+ </section>
+ <section>
+ <title>Configuring multiple backups</title>
+ <para>
+ In this instance we have assumed that there are only 2 nodes where each node has a backup for the other
+ node. However you may want to configure a server too have multiple backup nodes. For example you may want
+ 3 nodes where each node has 2 backups, one for each of the other 2 live servers. For this you would simply
+ copy the backup configuration and make sure you do the following:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ Make sure that you give all the beans in the <literal>hornetq-jboss-beans.xml</literal> configuration
+ file a unique name, i.e.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section>
+ <title>Running the shipped example</title>
+ <para>
+ EAP ships with an example configuration for this topology. Look under <literal>extras/hornetq/resources/examples/symmetric-cluster-with-backups-colocated</literal>
+ and follow the read me
+ </para>
+ </section>
+ </section>
+ </section>
+ <section>
+ <title>Dedicated Live and Backup in Symmetrical cluster</title>
+ <para>
+ In reality the configuration for this is exactly the same as the backup server in the previous section, the only
+ difference is that a backup will reside on an eap instance of its own rather than colocated with another live server.
+ Of course this means that the eap instance is passive and not used until the backup comes live and is only
+ really useful for pure JMS applications.
+ </para>
+ <para>The following diagram shows a possible configuration for this:</para>
+ <para>
+ <graphic fileref="images/simple-dedicated.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <para>
+ Here you can see how this works with remote JMS clients. Once failover occurs the HornetQ backup Server takes
+ running within another eap instance takes over as live.
+ </para>
+ <para>
+ This is fine with applications that are pure JMS and have no JMS components such as MDB's. If you are using
+ JMS components then there are 2 ways that this can be done. The first is shown in the following diagram:
+ </para>
+ <para>
+ <graphic fileref="images/simple-dedicated-jca.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <para>
+ Because there is no live hornetq server running by default in the eap instance running the backup server it
+ makes no sense to host any applications in it. However you can host applications on the server running the live
+ hornetq server. If failure occurs to an live hornetq server then remote jms clients will failover as previously
+ explained however what happens to any messages meant for or sent from JEE components. Well when the backup comes
+ live, messages will be distributed to and from the backup server over HornetQ cluster connections and handled
+ appropriately.
+ </para>
+ <para>
+ The second way to do this is to have both live and backup server remote form the eap instance as shown in the
+ following diagram.
+ </para>
+ <para>
+ <graphic fileref="images/simple-dedicated-jca-remote.jpg" align="center" format="jpg" scale="30"/>
+ </para>
+ <para>
+ Here you can see that all the Application (via JCA) will be serviced by a HornetQ server in its own eap instance.
+ </para>
+ <section>
+ <title>Configuration of dedicated Live and backup</title>
+ <para>
+ The live server configuration is exactly the same as in the previous example. The only difference of course
+ is that there is no backup in the eap instance.
+ </para>
+ <para>
+ For the backup server the <literal>hornetq-configuration.xml</literal> is unchanged, however since there is
+ no live server we need to make sure that the <literal>hornetq-jboss-beans.xml</literal> instantiates all
+ the beans needed. For this simply use the same configuration as in the live server changing only the
+ location of the <literal>hornetq-configuration.xml</literal> parameter for the <literal>Configuration</literal>
+ bean.
+ </para>
+ <para>
+ As before there will be no <literal>hornetq-jms.xml</literal> or <literal>jms-ds.xml</literal> configuration.
+ </para>
+ <para>
+ If you want both hornetq servers to be in there own dedicated server where they are remote to applications,
+ as in the last diagram. Then simply edit the <literal>jms-ds.xml</literal> and change the following lines to
+ </para>
+ <programlisting>
+ <config-property name="ConnectorClassName" type="java.lang.String">org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</config-property>
+ <config-property name="ConnectionParameters" type="java.lang.String">host=127.0.0.1;port=5446</config-property>
+ </programlisting>
+ <para>
+ This will change the outbound JCA connector, to configure the inbound connector for MDB's edit the
+ <literal>ra.xml</literal> config file and change the following parameters.
+ </para>
+ <programlisting>
+ <config-property>
+ <description>The transport type</description>
+ <config-property-name>ConnectorClassName</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</config-property-value>
+ </config-property>
+ <config-property>
+ <description>The transport configuration. These values must be in the form of key=val;key=val;</description>
+ <config-property-name>ConnectionParameters</config-property-name>
+ <config-property-type>java.lang.String</config-property-type>
+ <config-property-value>host=127.0.0.1;port=5446</config-property-value>
+ </config-property>
+ </programlisting>
+ <para>
+ In both cases the host and port should match your live server. If you are using Discovery then set the
+ appropriate parameters for <literal>DiscoveryAddress</literal> and <literal>DiscoveryPort</literal> to match
+ your configured broadcast groups.
+ </para>
+ </section>
+ <section>
+ <title>Running the shipped example</title>
+ <para>
+ EAP ships with an example configuration for this topology. Look under
+ <literal>extras/hornetq/resources/examples/cluster-with-dedicated-backup</literal>
+ and follow the read me
+ </para>
+ </section>
+ </section>
+ </section>
+</chapter>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/diagrams/ha-topologies1.odg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/diagrams/ha-topologies1.odg b/docs/eap-manual/en/diagrams/ha-topologies1.odg
new file mode 100644
index 0000000..f42e64f
Binary files /dev/null and b/docs/eap-manual/en/diagrams/ha-topologies1.odg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-colocated.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-colocated.jpg b/docs/eap-manual/en/images/simple-colocated.jpg
new file mode 100644
index 0000000..ed998e5
Binary files /dev/null and b/docs/eap-manual/en/images/simple-colocated.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-colocated2.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-colocated2.jpg b/docs/eap-manual/en/images/simple-colocated2.jpg
new file mode 100644
index 0000000..76e6ee3
Binary files /dev/null and b/docs/eap-manual/en/images/simple-colocated2.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-colocated3.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-colocated3.jpg b/docs/eap-manual/en/images/simple-colocated3.jpg
new file mode 100644
index 0000000..d07a9eb
Binary files /dev/null and b/docs/eap-manual/en/images/simple-colocated3.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-dedicated-jca-remote.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-dedicated-jca-remote.jpg b/docs/eap-manual/en/images/simple-dedicated-jca-remote.jpg
new file mode 100644
index 0000000..6a98b3a
Binary files /dev/null and b/docs/eap-manual/en/images/simple-dedicated-jca-remote.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-dedicated-jca.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-dedicated-jca.jpg b/docs/eap-manual/en/images/simple-dedicated-jca.jpg
new file mode 100644
index 0000000..4d6387f
Binary files /dev/null and b/docs/eap-manual/en/images/simple-dedicated-jca.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/images/simple-dedicated.jpg
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/images/simple-dedicated.jpg b/docs/eap-manual/en/images/simple-dedicated.jpg
new file mode 100644
index 0000000..ea97b2c
Binary files /dev/null and b/docs/eap-manual/en/images/simple-dedicated.jpg differ
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/en/master.xml
----------------------------------------------------------------------
diff --git a/docs/eap-manual/en/master.xml b/docs/eap-manual/en/master.xml
new file mode 100644
index 0000000..e69de29
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/eap-manual/pom.xml
----------------------------------------------------------------------
diff --git a/docs/eap-manual/pom.xml b/docs/eap-manual/pom.xml
new file mode 100644
index 0000000..4c85f52
--- /dev/null
+++ b/docs/eap-manual/pom.xml
@@ -0,0 +1,305 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright 2009 Red Hat, Inc.
+ ~ Red Hat 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/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.project</groupId>
+ <artifactId>${docname}-${translation}</artifactId>
+ <version>1.0</version>
+ <packaging>jdocbook</packaging>
+ <name>${bookname}-(${translation})</name>
+
+ <properties>
+ <translation>en</translation>
+ <docname>HornetQ_EAP_Manual</docname>
+ <bookname>HornetQ EAP Manual</bookname>
+ </properties>
+
+ <repositories>
+ <repository>
+ <id>jboss-public-repository-group</id>
+ <name>JBoss Public Maven Repository Group</name>
+ <url>https://repository.jboss.org/nexus/content/groups/public/</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ <updatePolicy>never</updatePolicy>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>jboss-public-repository-group</id>
+ <name>JBoss Public Maven Repository Group</name>
+ <url>https://repository.jboss.org/nexus/content/groups/public/</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ <!--pluginRepository>
+ <id>jboss-snapshot-repository-group</id>
+ <name>JBoss Snapshot Maven Repository Group</name>
+ <url>https://repository.jboss.org/nexus/content/groups/snapshot/</url>
+ <layout>default</layout>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository-->
+ </pluginRepositories>
+
+ <profiles>
+
+ <!-- mvn compile -->
+ <profile>
+ <id>all</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.2.1</version>
+ <extensions>true</extensions>
+ <configuration>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>${docname}.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- mvn compile -Phtml -->
+ <profile>
+ <id>html</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.2.1</version>
+ <extensions>true</extensions>
+ <configuration>
+ <formats>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- mvn compile -Phtml-single -->
+ <profile>
+ <id>html-single</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.2.1</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- mvn compile -Ppdf -->
+ <profile>
+ <id>pdf</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.0</version>
+ <extensions>true</extensions>
+ <configuration>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>${docname}.pdf</finalName>
+ </format>
+ </formats>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ </profiles>
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.2.1</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.pressgang</groupId>
+ <artifactId>pressgang-xslt</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.1</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDirectory>${project.basedir}</sourceDirectory>
+ <sourceDocumentName>${docname}.xml</sourceDocumentName>
+ <masterTranslation>en</masterTranslation>
+ <imageResource>
+ <directory>${project.basedir}/en</directory>
+ <includes>
+ <include>images/*.png</include>
+ </includes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>${pdf.name}</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <transformerParameters>
+ <property>
+ <name>javax.xml.parsers.DocumentBuilderFactory</name>
+ <value>org.apache.xerces.jaxp.DocumentBuilderFactoryImpl</value>
+ </property>
+ <property>
+ <name>javax.xml.parsers.SAXParserFactory</name>
+ <value>org.apache.xerces.jaxp.SAXParserFactoryImpl</value>
+ </property>
+ </transformerParameters>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ <!--<build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.2.1</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.pressgang</groupId>
+ <artifactId>pressgang-xslt</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.1</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>${docname}.xml</sourceDocumentName>
+ <sourceDirectory>.</sourceDirectory>
+ <imageResource>
+ <directory>${translation}</directory>
+ <includes>
+ <include>images/*</include>
+ </includes>
+ </imageResource>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <transformerParameters>
+ <property>
+ <name>javax.xml.parsers.DocumentBuilderFactory</name>
+ <value>org.apache.xerces.jaxp.DocumentBuilderFactoryImpl</value>
+ </property>
+ <property>
+ <name>javax.xml.parsers.SAXParserFactory</name>
+ <value>org.apache.xerces.jaxp.SAXParserFactoryImpl</value>
+ </property>
+ </transformerParameters>
+ </options>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>-->
+
+</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/pom.xml
----------------------------------------------------------------------
diff --git a/docs/pom.xml b/docs/pom.xml
new file mode 100644
index 0000000..de0fd31
--- /dev/null
+++ b/docs/pom.xml
@@ -0,0 +1,51 @@
+<!--
+ ~ Copyright 2009 Red Hat, Inc.
+ ~ Red Hat 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.hornetq</groupId>
+ <artifactId>hornetq-pom</artifactId>
+ <version>2.5.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.hornetq.docs</groupId>
+ <artifactId>hornetq-docs</artifactId>
+ <packaging>pom</packaging>
+ <name>HornetQ Documentation</name>
+
+ <properties>
+ <skipLicenseCheck>true</skipLicenseCheck>
+ <skipStyleCheck>true</skipStyleCheck>
+ </properties>
+
+ <modules>
+ <module>user-manual</module>
+ <module>quickstart-guide</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/Author_Group.xml
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/Author_Group.xml b/docs/quickstart-guide/en/Author_Group.xml
new file mode 100644
index 0000000..b0dac5f
--- /dev/null
+++ b/docs/quickstart-guide/en/Author_Group.xml
@@ -0,0 +1,45 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE authorgroup PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_QuickStart_Guide.ent">
+%BOOK_ENTITIES;
+]>
+<authorgroup>
+ <author>
+ <firstname>Clebert</firstname>
+ <surname>Suconic</surname>
+ <affiliation>
+ <shortaffil>Red Hat, Inc.</shortaffil>
+ <jobtitle>Project Lead</jobtitle>
+ <orgdiv>JBoss</orgdiv>
+ </affiliation>
+ <email>csuconic@redhat.com</email>
+ </author>
+ <author>
+ <firstname>Andy</firstname>
+ <surname>Taylor</surname>
+ <affiliation>
+ <shortaffil>Red Hat, Inc.</shortaffil>
+ <jobtitle>Core Developer</jobtitle>
+ <orgdiv>JBoss</orgdiv>
+ </affiliation>
+ <email>ataylor@redhat.com</email>
+ </author>
+ <author>
+ <firstname>Tim</firstname>
+ <surname>Fox</surname>
+ </author>
+ <author>
+ <firstname>Jeff</firstname>
+ <surname>Mesnil</surname>
+ </author>
+ <author>
+ <firstname>Howard</firstname>
+ <surname>Gao</surname>
+ <affiliation>
+ <shortaffil>Red Hat, Inc.</shortaffil>
+ <jobtitle>Core Developer</jobtitle>
+ <orgdiv>JBoss</orgdiv>
+ </affiliation>
+ <email>ghoward@redhat.com</email>
+ </author>
+</authorgroup>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/Book_Info.xml
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/Book_Info.xml b/docs/quickstart-guide/en/Book_Info.xml
new file mode 100644
index 0000000..5f2ce4b
--- /dev/null
+++ b/docs/quickstart-guide/en/Book_Info.xml
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- This document was created with Syntext Serna Free. --><!DOCTYPE bookinfo PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_QuickStart_Guide.ent">
+%BOOK_ENTITIES;
+]>
+<bookinfo id="HornetQ_QuickStart_Guide">
+ <title>HornetQ QuickStart Guide</title>
+ <subtitle>Putting the buzz in messaging</subtitle>
+ <productname>HornetQ</productname>
+ <edition>2.1.0</edition>
+ <pubsnumber>1</pubsnumber>
+ <abstract>
+ <para>This Quickstart guide will help you get HornetQ up and running in a few minutes and will explain the basics needed
+ to get started.</para>
+ </abstract>
+ <corpauthor>
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata fileref="images/hornetQ_logo_600px.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase>HornetQ Logo</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </corpauthor>
+ <copyright>
+ <year>&YEAR;</year>
+ <holder>&HOLDER;</holder>
+ </copyright>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Author_Group.xml"/>
+</bookinfo>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.ent
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.ent b/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.ent
new file mode 100644
index 0000000..f3d2b4a
--- /dev/null
+++ b/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.ent
@@ -0,0 +1,5 @@
+<!ENTITY PRODUCT "HornetQ">
+<!ENTITY BOOKID "HornetQ_QuickStart_Guide">
+<!ENTITY YEAR "2011">
+<!ENTITY HOLDER "Red Hat Inc.">
+<!ENTITY semi ";">
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.xml
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.xml b/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.xml
new file mode 100644
index 0000000..62114fa
--- /dev/null
+++ b/docs/quickstart-guide/en/HornetQ_QuickStart_Guide.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_QuickStart_Guide.ent">
+%BOOK_ENTITIES;
+
+]>
+<book>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Book_Info.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="notice.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="about.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="introduction.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="download.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="installation.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="running.xml"/>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="examples.xml"/>
+</book>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/about.xml
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/about.xml b/docs/quickstart-guide/en/about.xml
new file mode 100644
index 0000000..b55905c
--- /dev/null
+++ b/docs/quickstart-guide/en/about.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ============================================================================= -->
+<!-- Copyright © 2009 Red Hat, Inc. and others. -->
+<!-- -->
+<!-- The text of and illustrations in this document are licensed by Red Hat under -->
+<!-- a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). -->
+<!-- -->
+<!-- An explanation of CC-BY-SA is available at -->
+<!-- -->
+<!-- http://creativecommons.org/licenses/by-sa/3.0/. -->
+<!-- -->
+<!-- In accordance with CC-BY-SA, if you distribute this document or an adaptation -->
+<!-- of it, you must provide the URL for the original version. -->
+<!-- -->
+<!-- Red Hat, as the licensor of this document, waives the right to enforce, -->
+<!-- and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent -->
+<!-- permitted by applicable law. -->
+<!-- ============================================================================= -->
+
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_QuickStart_Guide.ent">
+%BOOK_ENTITIES;
+]>
+
+<chapter id="about">
+ <title>About HornetQ</title>
+ <para>What is HornetQ?</para>
+ <itemizedlist>
+ <listitem>
+ <para>HornetQ is an open source project to build a multi-protocol, embeddable, very high
+ performance, clustered, asynchronous messaging system.</para>
+ </listitem>
+ <listitem>
+ <para>For answers to more questions about what HornetQ is and what it isn't please visit
+ the <ulink url="http://www.jboss.org/community/wiki/HornetQGeneralFAQs">FAQs wiki
+ page</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Why use HornetQ? Here are just a few of the reasons:</para>
+ <itemizedlist>
+ <listitem>
+ <para>100% open source software. HornetQ is licenced using the Apache Software License v2.0
+ to minimise barriers to adoption.</para>
+ </listitem>
+ <listitem>
+ <para>HornetQ is designed with usability in mind.</para>
+ </listitem>
+ <listitem>
+ <para>Written in Java. Runs on any platform with a Java 6+ runtime, that's everything
+ from Windows desktops to IBM mainframes.</para>
+ </listitem>
+ <listitem>
+ <para>Amazing performance. Our class beating high performance journal provides persistent
+ messaging performance at rates normally seen for non persistent messaging, our non
+ persistent messaging performance rocks the boat too.</para>
+ </listitem>
+ <listitem>
+ <para>Full feature set. All the features you'd expect in any serious messaging system,
+ and others you won't find anywhere else.</para>
+ </listitem>
+ <listitem>
+ <para>Elegant, clean-cut design with minimal third party dependencies. Run HornetQ
+ stand-alone, run it in integrated in your favourite JEE application server, or run
+ it embedded inside your own product. It's up to you.</para>
+ </listitem>
+ <listitem>
+ <para>Seamless high availability. We provide a HA solution with automatic client
+ failover so you can guarantee zero message loss or duplication in event of server
+ failure.</para>
+ </listitem>
+ <listitem>
+ <para>Hugely flexible clustering. Create clusters of servers that know how to load
+ balance messages. Link geographically distributed clusters over unreliable
+ connections to form a global network. Configure routing of messages in a highly
+ flexible way.</para>
+ </listitem>
+ <listitem>
+ <para>For a full list of features, please see the <ulink
+ url="http://www.jboss.org/community/wiki/HornetQFeatures">features wiki
+ page</ulink> .</para>
+ </listitem>
+ </itemizedlist>
+</chapter>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/docs/quickstart-guide/en/download.xml
----------------------------------------------------------------------
diff --git a/docs/quickstart-guide/en/download.xml b/docs/quickstart-guide/en/download.xml
new file mode 100644
index 0000000..bc0beec
--- /dev/null
+++ b/docs/quickstart-guide/en/download.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- ============================================================================= -->
+<!-- Copyright © 2009 Red Hat, Inc. and others. -->
+<!-- -->
+<!-- The text of and illustrations in this document are licensed by Red Hat under -->
+<!-- a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). -->
+<!-- -->
+<!-- An explanation of CC-BY-SA is available at -->
+<!-- -->
+<!-- http://creativecommons.org/licenses/by-sa/3.0/. -->
+<!-- -->
+<!-- In accordance with CC-BY-SA, if you distribute this document or an adaptation -->
+<!-- of it, you must provide the URL for the original version. -->
+<!-- -->
+<!-- Red Hat, as the licensor of this document, waives the right to enforce, -->
+<!-- and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent -->
+<!-- permitted by applicable law. -->
+<!-- ============================================================================= -->
+
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "HornetQ_QuickStart_Guide.ent">
+%BOOK_ENTITIES;
+]>
+<chapter id="download">
+ <title>Download</title>
+ <para>The official HornetQ project page is <ulink url="http://hornetq.org/"
+ >http://hornetq.org/</ulink>.</para>
+ <section id="download.software">
+ <title>Software Download</title>
+ <para>The software can be download from the Download page:<ulink
+ url="http://hornetq.org/downloads.html"
+ >http://hornetq.org/downloads.html</ulink></para>
+ </section>
+ <section id="download.git">
+ <title>Project Information</title>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Please take a look at our project <ulink
+ url="http://www.jboss.org/community/wiki/HornetQ">wiki</ulink></para>
+ </listitem>
+ <listitem>
+ <para>If you have any user questions please use our <ulink
+ url="https://community.jboss.org/en/hornetq">user
+ forum</ulink></para>
+ </listitem>
+ <listitem>
+ <para>If you have development related questions, please use our <ulink
+ url="http://www.jboss.org/index.html?module=bb&op=viewforum&f=313"
+ >developer forum</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Pop in and chat to us in our <ulink url="irc://irc.freenode.net:6667/hornetq"
+ >IRC channel</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Our project <ulink url="http://hornetq.blogspot.com/">blog</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Follow us on <ulink url="http://twitter.com/hornetq">twitter</ulink></para>
+ </listitem>
+ <listitem>
+ <para>HornetQ Git repository is <ulink
+ url="https://github.com/hornetq/hornetq"
+ >https://github.com/hornetq/hornetq</ulink></para>
+ </listitem>
+ <listitem>
+ <para>All release tags are available from <ulink
+ url="https://github.com/hornetq/hornetq/tags"
+ >https://github.com/hornetq/hornetq/tags</ulink></para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ </section>
+</chapter>