activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r902366 [3/3] - in /websites/production/activemq/content: ./ cache/
Date Wed, 19 Mar 2014 18:22:02 GMT
Modified: websites/production/activemq/content/producer-flow-control.html
==============================================================================
--- websites/production/activemq/content/producer-flow-control.html (original)
+++ websites/production/activemq/content/producer-flow-control.html Wed Mar 19 18:22:01 2014
@@ -82,36 +82,12 @@
   <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="ProducerFlowControl-ProducerFlowControl">Producer
Flow Control</h2>
-
-<p>In ActiveMQ 4.x flow control was implemented using TCP flow control. The underlying
network connection of throttled consumers was suspended to enforce flow control limits. This
strategy is very efficient but can lead to deadlocks if there are multiple producers and consumers
sharing the same connection.</p>
-
-<p>As of ActiveMQ 5.0, we can now individually flow control each producer on a shared
connection without having to suspend the entire connection. By 'flow control' we mean that
if the broker detects that the memory limit for the destination, or the temp- or file-store
limits for the broker, have been exceeded, then the flow of messages can be slowed down. The
producer will be either blocked until resources are available <em>or</em> will
receive a JMSException: this behaviour is configurable and described in the section below
on <code>&lt;systemUsage&gt;</code>. </p>
-
-<p>It's worth noting that the default <code>&lt;systemUsage&gt;</code>
settings will cause the producer to <em>block</em> when the <code>memoryLimit</code>
or <code>&lt;systemUsage&gt;</code> limits are reached: this blocking
behaviour is sometimes misinterpreted as a 'hung producer', when in fact the producer is simply
diligently waiting until space is available.</p>
-
-<ul><li>Messages that are sent synchronously will automatically use per producer
flow control; this applies generally to persistent messages which are sent synchronously <em>unless</em>
you enable the <code>useAsyncSend</code> flag.</li></ul>
-
-
-<ul><li>Producers that use <a shape="rect" href="async-sends.html">Async
Sends</a> - generally speaking, producers of non-persistent messages - don't bother
waiting for any acknowledgement from the broker; so, if a memory limit has been exceeded,
you will <em>not</em> get notfied. If you do want to be aware of broker limits
being exceeded, you will need to configure the ProducerWindowSize connection option so that
even async messages are flow controlled per producer.</li></ul>
-
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
-<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
-ActiveMQConnectionFactory connctionFactory = ...
+<div class="wiki-content maincontent"><h2 id="ProducerFlowControl-ProducerFlowControl">Producer
Flow Control</h2><p>In ActiveMQ 4.x flow control was implemented using TCP flow
control. The underlying network connection of throttled consumers was suspended to enforce
flow control limits. This strategy is very efficient but can lead to deadlocks if there are
multiple producers and consumers sharing the same connection.</p><p>As of ActiveMQ
5.0, we can now individually flow control each producer on a shared connection without having
to suspend the entire connection. By 'flow control' we mean that if the broker detects that
the memory limit for the destination, or the temp- or file-store limits for the broker, have
been exceeded, then the flow of messages can be slowed down. The producer will be either blocked
until resources are available <em>or</em> will receive a JMSException: this behaviour
is configurable and described in the section below on <code>&lt;systemUsage&gt;</code>.</p><p
 >It's worth noting that the default <code>&lt;systemUsage&gt;</code>
settings will cause the producer to <em>block</em> when the <code>memoryLimit</code>
or <code>&lt;systemUsage&gt;</code> limits are reached: this blocking
behaviour is sometimes misinterpreted as a 'hung producer', when in fact the producer is simply
diligently waiting until space is available.</p><ul><li>Messages that are
sent synchronously will automatically use per producer flow control; this applies generally
to persistent messages which are sent synchronously <em>unless</em> you enable
the <code>useAsyncSend</code> flag.</li></ul><ul><li>Producers
that use <a shape="rect" href="async-sends.html">Async Sends</a> - generally speaking,
producers of non-persistent messages - don't bother waiting for any acknowledgement from the
broker; so, if a memory limit has been exceeded, you will <em>not</em> get notfied.
If you do want to be aware of broker limits being exceeded, you will need to configure the
ProducerWindow
 Size connection option so that even async messages are flow controlled per producer.</li></ul><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ActiveMQConnectionFactory
connctionFactory = ...
 connctionFactory.setProducerWindowSize(1024000);
 ]]></script>
-</div></div>
-
-<p>The ProducerWindowSize is the maximum number of bytes of data that a producer will
transmit to a broker before waiting for acknowledgment messages from the broker that it has
accepted the previously sent messages.  </p>
-
-<p>Alternatively, if you're sending non-persisted messages (which are by default sent
async), and want to be informed if the queue or topic's memory limit has been breached, then
you can simply configure the connection factory to 'alwaysSyncSend'. While this is going to
be slower, it will ensure that your message producer is informed immediately of memory issues.</p>
-
-<p>If you like, you can disable flow control for specific JMS queues and topics on
the broker by setting the <code>producerFlowControl</code> flag to false on the
appropriate destination policy in the Broker configuration - e.g.</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;destinationPolicy&gt;
+</div></div><p>The ProducerWindowSize is the maximum number of bytes of
data that a producer will transmit to a broker before waiting for acknowledgment messages
from the broker that it has accepted the previously sent messages.</p><p>Alternatively,
if you're sending non-persisted messages (which are by default sent async), and want to be
informed if the queue or topic's memory limit has been breached, then you can simply configure
the connection factory to 'alwaysSyncSend'. While this is going to be slower, it will ensure
that your message producer is informed immediately of memory issues.</p><p>If
you like, you can disable flow control for specific JMS queues and topics on the broker by
setting the <code>producerFlowControl</code> flag to false on the appropriate
destination policy in the Broker configuration - e.g.</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;destinationPolicy&gt;
   &lt;policyMap&gt;
     &lt;policyEntries&gt;
       &lt;policyEntry topic=&quot;FOO.&gt;&quot; producerFlowControl=&quot;false&quot;/&gt;
@@ -119,39 +95,14 @@ connctionFactory.setProducerWindowSize(1
   &lt;/policyMap&gt;
 &lt;/destinationPolicy&gt;
 ]]></script>
-</div></div>
-
-<p>see <a shape="rect" href="xml-configuration.html">Broker Configuration</a>.
</p>
-
-<p>Note that, since the introduction of the new file cursor in ActiveMQ 5.x, non-persisted
messages are shunted into the temporary file store to reduce the amount of memory used for
non-persistent messaging. As a result, you may find that a queue's memoryLimit is never reached,
as the cursor doesn't use very much memory. If you really do want to keep all your non-persistent
messages in memory, and stop producers when the limit is reached, you should configure the
<code>&lt;vmQueueCursor&gt;</code>. </p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
-<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
-&lt;policyEntry queue=&quot;&gt;&quot; producerFlowControl=&quot;true&quot;
memoryLimit=&quot;1mb&quot;&gt;    
+</div></div><p>see <a shape="rect" href="xml-configuration.html">Broker
Configuration</a>.</p><p>Note that, since the introduction of the new file
cursor in ActiveMQ 5.x, non-persisted messages are shunted into the temporary file store to
reduce the amount of memory used for non-persistent messaging. As a result, you may find that
a queue's memoryLimit is never reached, as the cursor doesn't use very much memory. If you
really do want to keep all your non-persistent messages in memory, and stop producers when
the limit is reached, you should configure the <code>&lt;vmQueueCursor&gt;</code>.</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;policyEntry
queue=&quot;&gt;&quot; producerFlowControl=&quot;true&quot; memoryLimit=&quot;1mb&quot;&gt;
   
   &lt;pendingQueuePolicy&gt;
     &lt;vmQueueCursor/&gt;
   &lt;/pendingQueuePolicy&gt;
 &lt;/policyEntry&gt;
 ]]></script>
-</div></div> 
-
-<p>The fragment above will ensure that all non-persistent queue messages are kept in
memory, with each queue having a limit of 1Mb. </p>
-
-<h3 id="ProducerFlowControl-HowProducerFlowControlworks">How Producer Flow Control
works</h3>
-
-<p>If you are sending a persistent message (so that a response of the <a shape="rect"
href="openwire.html">OpenWire</a> Message is expected then the broker will send the
producer a <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/activemq-core/apidocs/org/apache/activemq/command/ProducerAck.html">ProducerAck</a>
message. This informs the producer that the previous sending window has been processed, so
that it can now send another window. Its kinda like consumer acks but in reverse. </p>
-
-<h4 id="ProducerFlowControl-Advantage">Advantage </h4>
-
-<p>So a nice producer might wait for a producer ack before sending more data, to avoid
flooding the broker (and forcing the broker to block the entire connection if a slow consumer
occurs). To see how this works in source code, check out the <a shape="rect" class="external-link"
href="http://activemq.apache.org/maven/activemq-core/apidocs/src-html/org/apache/activemq/ActiveMQMessageProducer.html#line.71">ActiveMQMessageProducer</a>
code.</p>
-
-<p>Though a client can ignore the producer ACKs altogether and the broker should just
stall the transport if it has to for slow consumer handling; though this does mean it'll stall
the entire connection.</p>
-
-<h3 id="ProducerFlowControl-ConfigureClient-SideExceptions">Configure Client-Side Exceptions
</h3>
-
-<p>An alternative to the indefinite blocking of the <code>send()</code>
operation when no space is free on the broker is to instead configure that an exception to
be thrown on the client-side. By configuring the <code>sendFailIfNoSpace</code>
property to <code>true</code>, the broker will cause the <code>send()</code>
operation to fail with a <code>javax.jms.ResourceAllocationException</code>, which
will propagate to the client. Below is an example of this configuration:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+</div></div><p>The fragment above will ensure that all non-persistent queue
messages are kept in memory, with each queue having a limit of 1Mb.</p><h3 id="ProducerFlowControl-HowProducerFlowControlworks">How
Producer Flow Control works</h3><p>If you are sending a persistent message (so
that a response of the <a shape="rect" href="openwire.html">OpenWire</a> Message
is expected then the broker will send the producer a <a shape="rect" class="external-link"
href="http://activemq.apache.org/maven/5.9.0/apidocs/index.html">ProducerAck</a>
message. This informs the producer that the previous sending window has been processed, so
that it can now send another window. Its kinda like consumer acks but in reverse.</p><h4
id="ProducerFlowControl-Advantage">Advantage</h4><p>So a nice producer might
wait for a producer ack before sending more data, to avoid flooding the broker (and forcing
the broker to block the entire connection if a slow consumer occurs). To see how this works
in source code, 
 check out the <a shape="rect" class="external-link" href="http://activemq.apache.org/maven/5.9.0/apidocs/index.html">ActiveMQMessageProducer</a>
code.</p><p>Though a client can ignore the producer ACKs altogether and the broker
should just stall the transport if it has to for slow consumer handling; though this does
mean it'll stall the entire connection.</p><h3 id="ProducerFlowControl-ConfigureClient-SideExceptions">Configure
Client-Side Exceptions</h3><p>An alternative to the indefinite blocking of the
<code>send()</code> operation when no space is free on the broker is to instead
configure that an exception to be thrown on the client-side. By configuring the <code>sendFailIfNoSpace</code>
property to <code>true</code>, the broker will cause the <code>send()</code>
operation to fail with a <code>javax.jms.ResourceAllocationException</code>, which
will propagate to the client. Below is an example of this configuration:</p><div
class="code panel pdl" style="border-width: 1px;"><div 
 class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;systemUsage&gt;
  &lt;systemUsage sendFailIfNoSpace=&quot;true&quot;&gt;
    &lt;memoryUsage&gt;
@@ -159,13 +110,7 @@ connctionFactory.setProducerWindowSize(1
    &lt;/memoryUsage&gt;
  &lt;/systemUsage&gt;
 &lt;/systemUsage&gt;]]></script>
-</div></div>
-
-<p>The advantage of this property is that the client can catch the <code>javax.jms.ResourceAllocationException</code>,
wait a bit and retry the <code>send()</code> operation instead of just hanging
indefinitely. </p>
-
-<p>Starting in version 5.3.1 the <code>sendFailIfNoSpaceAfterTimeout</code>
property has been added. This property causes the <code>send()</code> operation
to fail with an exception on the client-side, but only after waiting the given amount of time.
If space on the broker is still not freed after the configured amount of time, only then does
the <code>send()</code> operation fail with an exception to the client-side. Below
is an example: </p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+</div></div><p>The advantage of this property is that the client can catch
the <code>javax.jms.ResourceAllocationException</code>, wait a bit and retry the
<code>send()</code> operation instead of just hanging indefinitely.</p><p>Starting
in version 5.3.1 the <code>sendFailIfNoSpaceAfterTimeout</code> property has been
added. This property causes the <code>send()</code> operation to fail with an
exception on the client-side, but only after waiting the given amount of time. If space on
the broker is still not freed after the configured amount of time, only then does the <code>send()</code>
operation fail with an exception to the client-side. Below is an example:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;systemUsage&gt;
  &lt;systemUsage sendFailIfNoSpaceAfterTimeout=&quot;3000&quot;&gt;
    &lt;memoryUsage&gt;
@@ -173,20 +118,7 @@ connctionFactory.setProducerWindowSize(1
    &lt;/memoryUsage&gt;
  &lt;/systemUsage&gt;
 &lt;/systemUsage&gt;]]></script>
-</div></div>
-
-<p>The timeout is defined in milliseconds so the example above waits for three seconds
before failing the <code>send()</code> operation with an exception to the client-side.
The advantage of this property is that it will block for the configured amount of time instead
of failing immediately or blocking indefinitely. This property offers not only an improvement
on the broker-side, but also an improvement for the client so it can catch the exception,
wait a bit and retry the <code>send()</code> operation. </p>
-
-
-<h2 id="ProducerFlowControl-DisablingFlowControl">Disabling Flow Control</h2>
-
-<p>A common requirement is to disable flow control so that message dispatching continues
until all available disk is used up by pending messages (whether persistent or non persistent
messaging is configured). To do this enable <a shape="rect" href="message-cursors.html">Message
Cursors</a>.</p>
-
-<h2 id="ProducerFlowControl-Systemusage">System usage</h2>
-
-<p>You can also slow down producers via some attributes on the <code>&lt;systemUsage&gt;</code>
element. Take a look at the following example:</p>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+</div></div><p>The timeout is defined in milliseconds so the example above
waits for three seconds before failing the <code>send()</code> operation with
an exception to the client-side. The advantage of this property is that it will block for
the configured amount of time instead of failing immediately or blocking indefinitely. This
property offers not only an improvement on the broker-side, but also an improvement for the
client so it can catch the exception, wait a bit and retry the <code>send()</code>
operation.</p><h2 id="ProducerFlowControl-DisablingFlowControl">Disabling Flow
Control</h2><p>A common requirement is to disable flow control so that message
dispatching continues until all available disk is used up by pending messages (whether persistent
or non persistent messaging is configured). To do this enable <a shape="rect" href="message-cursors.html">Message
Cursors</a>.</p><h2 id="ProducerFlowControl-Systemusage">System usage</h2><p>You
can also slow down producers via som
 e attributes on the <code>&lt;systemUsage&gt;</code> element. Take a
look at the following example:</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;systemUsage&gt;
   &lt;systemUsage&gt;
     &lt;memoryUsage&gt;
@@ -200,9 +132,7 @@ connctionFactory.setProducerWindowSize(1
     &lt;/tempUsage&gt;
   &lt;/systemUsage&gt;
 &lt;/systemUsage&gt;]]></script>
-</div></div>
-
-<p>You can set limits of memory for <code>NON_PERSISTENT</code> messages,
disk storage for <code>PERSITENT</code> messages and total usage for temporary
messages, the broker will use before it slowdown producers. <em>Using the default settings
shown above, the broker will block the <code>send()</code> call until some messages
are consumed and space becomes available on the broker.</em>  The default values are
shown above, you will probably need to increase these values for your environment. </p></div>
+</div></div><p>You can set limits of memory for <code>NON_PERSISTENT</code>
messages, disk storage for <code>PERSITENT</code> messages and total usage for
temporary messages, the broker will use before it slowdown producers. <em>Using the
default settings shown above, the broker will block the <code>send()</code> call
until some messages are consumed and space becomes available on the broker.</em> The
default values are shown above, you will probably need to increase these values for your environment.</p></div>
         </td>
         <td valign="top">
           <div class="navigation">

Modified: websites/production/activemq/content/siteindex.html
==============================================================================
--- websites/production/activemq/content/siteindex.html (original)
+++ websites/production/activemq/content/siteindex.html Wed Mar 19 18:22:01 2014
@@ -95,7 +95,7 @@
              <div class="smalltext" style="margin: 0 0 0 36px">April 2007 Report ActiveMQ
4.1.1 Released voted in a new committer, John Heitmann the developer and user lists continue
to be very active</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="40-rc-1-guide.html">4.0 RC 1 Guide</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h1. ActiveMQ 4.0-RC-1
Release Guide {include:Release Info} h2. Release Manager *Hiram Chirino* h2. Special issues
We are still in the Incubator so need to ensure that all the proper disclaimers are in place
and that the artifacts are all properly named *i</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">ActiveMQ 4.0-RC-1 Release
Guide Release Manager Hiram Chirino Special issues We are still in the Incubator so need to
ensure that all the proper disclaimers are in place and that the artifacts are all properly
named incubator-activemq. Open Issues Holding</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="58-migration-guide.html">5.8 Migration Guide</a>
         <br clear="none">
              <div class="smalltext" style="margin: 0 0 0 36px">There are some changes
in 5.8 that may require some code change New modules may effect your maven pom dependencies
activemq-core has been replaced with activemq-client and activemq-broker. The various message
stores have their own activemq-xx-store module</div>
@@ -111,58 +111,58 @@
              <div class="smalltext" style="margin: 0 0 0 36px">Active Groups is a dynamic
collaboration framework so simplify message passing and shared state between members of the
group. It is available in ActiveMQ 6.0 Active Groups includes the following: Dynamic membership
information broadcast messaging point-to</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-11-release.html">ActiveMQ 1.1 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release represents a major increase in functionality; the new features in this release
are:- * distributed queues and topics and clusters of message brokers * auto-reconnection
of clients across a cluster of brokers * support f</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release represents a major increase in functionality; the new features in this release are:-
distributed queues and topics and clusters of message brokers auto-reconnection of clients
across a cluster of brokers support for high pe</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-12-release.html">ActiveMQ 1.2 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release represents a major increase in functionality; the new features in this release
are:- * heaps of bug fixes and new test cases h2. Download Here ||Download||Description||
|[activemq-release-1.2.zip|http://dist.codehaus.or</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release represents a major increase in functionality; the new features in this release are:-
heaps of bug fixes and new test cases Download Here Download Description activemq-release-1.2.zip
Binary Distribution in zip package activ</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-13-release.html">ActiveMQ 1.3 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release represents a major increase in functionality; the new features in this release
are:- * heaps of bug fixes and new test cases h2. Download Here ||Download||Description||
|[activemq-release-1.3.zip|http://dist.codehaus.or</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release represents a major increase in functionality; the new features in this release are:-
heaps of bug fixes and new test cases Download Here Download Description activemq-release-1.3.zip
Binary Distribution in zip package activ</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-14-release.html">ActiveMQ 1.4 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release represents a major increase in functionality; the new features in this release
are:- * heaps of bug fixes and new test cases h2. Download Here ||Download||Description||
|[activemq-release-1.4.zip|http://dist.codehaus.or</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release represents a major increase in functionality; the new features in this release are:-
heaps of bug fixes and new test cases Download Here Download Description activemq-release-1.4.zip
Binary Distribution in zip package activ</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-15-release.html">ActiveMQ 1.5 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release is mostly a bug fix release:- * A few bug fixes for J2EE compliance h2. Download
Here ||Download||Description|| |[activemq-release-1.5.zip|http://dist.codehaus.org/activemq/distributions/activemq-release-1.5.zip]|Binary</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release is mostly a bug fix release:- A few bug fixes for J2EE compliance Download Here Download
Description activemq-release-1.5.zip Binary Distribution in zip package activemq-release-1.5-src.zip
Source Distribution in zip packag</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-20-release.html">ActiveMQ 2.0 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This is a major release including lots of new functionality and performance improvements:
This release includes * advisory messages so you can listen to the state of the message fabric
* optimised wire format for higher throughput *</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
is a major release including lots of new functionality and performance improvements: This
release includes advisory messages so you can listen to the state of the message fabric optimised
wire format for higher throughput improved </div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-21-release.html">ActiveMQ 2.1 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release includes full support for the high performance journal. Our default persistence
mechanism is now the journal for short term persistence and then JDBC (via Apache Derby by
default) for long term storage. The journal is r</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release includes full support for the high performance journal. Our default persistence mechanism
is now the journal for short term persistence and then JDBC (via Apache Derby by default)
for long term storage. The journal is regul</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-30-release.html">ActiveMQ 3.0 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This new release includes the following * a new 'discovery' transport [protocol|URI Protocols]
for a pure client-only peer network - a self discovering cluster which automatically finds
the brokers available on the network (as oppos</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
new release includes the following a new 'discovery' transport protocol for a pure client-only
peer network - a self discovering cluster which automatically finds the brokers available
on the network (as opposed to the 'peer' proto</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-31-release.html">ActiveMQ 3.1 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This new release includes the following * New [Stomp|http://stomp.codehaus.org/] support to
make it easy to create cross language clients such as for Ruby or Perl etc. (Python, C and
.Net coming soon) * XPath based selectors and dem</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
new release includes the following New Stomp support to make it easy to create cross language
clients such as for Ruby or Perl etc. (Python, C and .Net coming soon) XPath based selectors
and demand based publishing, making it easy </div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-32-release.html">ActiveMQ 3.2 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This new release includes the following * Improved [Stomp|http://stomp.codehaus.org/] 1.0
support to make it easy to create cross language clients such as for C, C#, Python, Ruby,
Perl and Pike. * Ajax support now uses OpenRico as t</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
new release includes the following Improved Stomp 1.0 support to make it easy to create cross
language clients such as for C, C#, Python, Ruby, Perl and Pike. Ajax support now uses OpenRico
as the default Ajax library the Resource </div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-321-release.html">ActiveMQ 3.2.1 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release is a bug fix release and users of previous versions of 3.2 are encouraged to
upgrade to this version. h2. Download Here ||Download||Description|| |[activemq-3.2.1.zip|http://dist.codehaus.org/activemq/distributions/acti</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release is a bug fix release and users of previous versions of 3.2 are encouraged to upgrade
to this version. Download Here Download Description activemq-3.2.1.zip Binary Distribution
in zip package activemq-3.2.1-src.zip Source Di</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-322-release.html">ActiveMQ 3.2.2 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This release is a bug fix release and users of previous versions of 3.2 are encouraged to
upgrade to this version. h2. Download Here ||Download||Description|| |[activemq-3.2.2.zip|http://dist.codehaus.org/activemq/distributions/acti</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
release is a bug fix release and users of previous versions of 3.2 are encouraged to upgrade
to this version. Download Here Download Description activemq-3.2.2.zip Binary Distribution
in zip package activemq-3.2.2-src.zip Source Di</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-4-connection-uris.html">ActiveMQ 4 Connection
URIs</a>
         <br clear="none">
              <div class="smalltext" style="margin: 0 0 0 36px"></div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-40-m4-release.html">ActiveMQ 4.0 M4 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This is the first milestone release of 4.x since the move to Apache so the package names have
changed from org.activemq to org.apache.activemq. For a full list see the [Changes in 4.0].
This release of ActiveMQ includes a large numb</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
is the first milestone release of 4.x since the move to Apache so the package names have changed
from org.activemq to org.apache.activemq. For a full list see the Changes in 4.0. This release
of ActiveMQ includes a large number of </div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-40-rc2-release.html">ActiveMQ 4.0 RC2
Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This is the second release candiate release of 4.0. This release of ActiveMQ includes a large
number of [new features|Changes in 4.0] such as [MasterSlave] and [Message Groups] together
with numerous bug fixes. h3. Warnings When upg</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
is the second release candiate release of 4.0. This release of ActiveMQ includes a large number
of new features such as MasterSlave and Message Groups together with numerous bug fixes. Warnings
When upgrading from a previous releas</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-40-release.html">ActiveMQ 4.0 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This is the 4.0 release of Apache ActiveMQ. This release of Apache ActiveMQ includes a large
number of [new features|Changes in 4.0] such as [MasterSlave] and [Message Groups] together
with numerous bug fixes. h3. Warnings When upgr</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
is the 4.0 release of Apache ActiveMQ. This release of Apache ActiveMQ includes a large number
of new features such as MasterSlave and Message Groups together with numerous bug fixes. Warnings
When upgrading from a previous release</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-401-release.html">ActiveMQ 4.0.1 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">{html} &lt;!-- {warning:title=The
Release is still in progress} You are previewing the release page for unreleased version of
ActiveMQ. The download links on the page below will not work until it is offically released.
Until the release is approved you could</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">&lt;!-- {warning:title=The
Release is still in progress} You are previewing the release page for unreleased version of
ActiveMQ. The download links on the page below will not work until it is offically released.
Until the release is approved you could try th</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-402-release.html">ActiveMQ 4.0.2 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">h2. New and Noteworthy
This is a minor bug fix release. All previous installations of Apache ActiveMQ 4.0.1 are recommended
to upgrade to this release. h2. Download Here ||Description||Download Link||PGP Signature
file of download |Binary for Windows|[inc</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">New and Noteworthy This
is a minor bug fix release. All previous installations of Apache ActiveMQ 4.0.1 are recommended
to upgrade to this release. Download Here Description Download Link PGP Signature file of
download Binary for Windows incubator-activem</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-410-release.html">ActiveMQ 4.1.0 Release</a>
         <br clear="none">
              <div class="smalltext" style="margin: 0 0 0 36px">{div:style=padding-right:20px;float:left;margin-left:-20px;}
!http://activemq.apache.org/activemq-410-release.data/activemq-4.1-box-reflection.png! {div}
{div:style=min-height:200px} h2. New and Noteworthy This is release contains several major
enhancemen</div>
@@ -183,7 +183,7 @@
              <div class="smalltext" style="margin: 0 0 0 36px">{div:style=padding-right:20px;float:left;margin-left:-20px;}
!http://activemq.apache.org/activemq-500-release.data/activemq-5.x-box-reflection.png! {div}
ActiveMQ 5.10 is currently being developed, and has not been released yet! ActiveMQ 5.10.0
Release (i</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-520-release.html">ActiveMQ 5.2.0 Release</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">{div:style=padding-right:20px;float:left;margin-left:-20px;}
!http://activemq.apache.org/activemq-500-release.data/activemq-5.x-box-reflection.png! {div}
{include:New Features in 5.2} h2. Getting the Binary Distributions ||Description||Download
Link||PGP </div>
+             <div class="smalltext" style="margin: 0 0 0 36px">{div:style=padding-right:20px;float:left;margin-left:-20px;}
!http://activemq.apache.org/activemq-500-release.data/activemq-5.x-box-reflection.png! {div}
Getting the Binary Distributions Description Download Link PGP Signature file of download
Windows Dis</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="activemq-530-release.html">ActiveMQ 5.3.0 Release</a>
         <br clear="none">
              <div class="smalltext" style="margin: 0 0 0 36px">{div:style=padding-right:20px;float:left;margin-left:-20px;}
!http://activemq.apache.org/activemq-500-release.data/activemq-5.x-box-reflection.png! {div}
Getting the Binary Distributions Description Download Link PGP Signature file of download
Windows Dis</div>
@@ -1219,7 +1219,7 @@
              <div class="smalltext" style="margin: 0 0 0 36px">New Features in 5.1
In the 5.1.x release of Apache ActiveMQ there are the following new features: You can use
the new DestinationSource on an ActiveMQConnection to access the available queues or topics
or listen to queues/topics being created or deleted. </div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="new-features-in-52.html">New Features in 5.2</a>
         <br clear="none">
-             <div class="smalltext" style="margin: 0 0 0 36px">Apache ActiveMQ 5.2
is primarily a maintenance release which [resolves|https://issues.apache.org/activemq/secure/ReleaseNote.jspa?projectId=10520&amp;styleName=Html&amp;version=11841]
{jiraissues:url=http://issues.apache.org/activemq/sr/jira.issueviews:searchrequ</div>
+             <div class="smalltext" style="margin: 0 0 0 36px">Apache ActiveMQ 5.2
is primarily a maintenance release which resolves . New Features in 5.2 The new features and
enhancements in this release include: Additional advisory messages for messages delivered/consumed
fast producers/slow consumers, Usage limits</div>
                              <span class="icon icon-page" title="Page">Page:</span>
                <a shape="rect" href="new-features-in-53.html">New Features in 5.3</a>
         <br clear="none">
              <div class="smalltext" style="margin: 0 0 0 36px">Apache ActiveMQ 5.3
is primarily a maintenance release which resolves 334 issues. New Features in 5.3 The new
features and enhancements in this release include: New KahaDB persistent storage Camel 2.0.0
along with its web console stomp over SSL and NIO su</div>



Mime
View raw message