> ...we have found that using one broker will not satisfy our throughput
requirements even with various tuning.

Performance tuning can be something of a dark art. I'm curious about your
use-case, specific testing methodology, performance goals, observed
performance, and tuning strategy.

> We have been using the ActiveMQ Classic Performance Module plugin to test
against Artemis.

It's worth noting that the ActiveMQ Classic Performance Module doesn't
support JMS 2's CompletionListener feature which can increase performance
for JMS producers so depending on your use-case you may be missing out on
relatively low-hanging fruit.

> We would like to setup an active-active symmetric cluster...

That's no problem. For the simplest way to set this up refer to my previous
email [1] on this subject.

If all you need is an active-active symmetric cluster I'm curious how HA
got brought into this discussion. It seemed previously like you were trying
to do both.


Justin

[1] https://lists.apache.org/thread/gof2fkcdyt6mt8pxmdlovpmr6v5rg427

On Wed, Mar 19, 2025 at 8:48 AM William Crowell
<wcrow...@perforce.com.invalid> wrote:

> Justin,
>
> With our current infrastructure, we have found that using one broker will
> not satisfy our throughput requirements even with various tuning.  We have
> been using the ActiveMQ Classic Performance Module plugin to test against
> Artemis:
>
>
> https://activemq.apache.org/components/classic/documentation/activemq-classic-performance-module-users-manual
>
> We would like to setup an active-active symmetric cluster where all
> brokers are active primaries similar to what this diagram shows in Figure
> 16.2:
>
>
> https://docs.redhat.com/en/documentation/red_hat_amq/7.4/html/configuring_amq_broker/setting-up-broker-cluster-configuring#common-broker-cluster-topologies-configuring
>
> Regards,
>
> William Crowell
>
> From: Justin Bertram <jbert...@apache.org>
> Date: Wednesday, March 19, 2025 at 9:37 AM
> To: users@activemq.apache.org <users@activemq.apache.org>
> Subject: Re: What HA Replication Policy Is For Active-Active Topology
> I lost the plot somewhere along the way I think. What specifically is your
> use-case? Why are you wanting multiple clusters?
>
>
> Justin
>
> On Wed, Mar 19, 2025 at 8:29 AM William Crowell
> <wcrow...@perforce.com.invalid> wrote:
>
> > Justin,
> >
> > So, you would definitely need one cluster with 2 brokers and another
> > cluster with at least one preferably two brokers as well?
> >
> > Regards,
> >
> > William Crowell
> >
> > From: Justin Bertram <jbert...@apache.org>
> > Date: Wednesday, March 19, 2025 at 9:25 AM
> > To: users@activemq.apache.org <users@activemq.apache.org>
> > Subject: Re: What HA Replication Policy Is For Active-Active Topology
> > > The HA piece only cares whether a cluster is defined and not
> necessarily
> > if it is a health cluster.
> >
> > To be clear, HA pairs use clustering mainly for discovery. In the case of
> > shared storage this discovery allows the primary broker to inform Core
> > clients (including Core JMS clients) about the cluster topology so they
> > know where to connect in the case of a failure.
> >
> >
> > Justin
> >
> > On Wed, Mar 19, 2025 at 8:03 AM William Crowell
> > <wcrow...@perforce.com.invalid> wrote:
> >
> > > Vilius,
> > >
> > > Thank you for your reply.  Can we do 2 broker clusters of 1 node each
> > with
> > > HA on top?  The HA piece only cares whether a cluster is defined and
> not
> > > necessarily if it is a health cluster.
> > >
> > > Regards,
> > >
> > > William Crowell
> > >
> > > From: Vilius Šumskas <vilius.sums...@rivile.lt.INVALID>
> > > Date: Tuesday, March 18, 2025 at 8:23 AM
> > > To: users@activemq.apache.org <users@activemq.apache.org>
> > > Subject: RE: What HA Replication Policy Is For Active-Active Topology
> > > [You don't often get email from vilius.sums...@rivile.lt.invalid.
> Learn
> > > why this is important at https://aka.ms/LearnAboutSenderIdentification
> ]
> > >
> > > Hi,
> > >
> > > active/active deployment you are talking about in Artemis world is just
> > > "group of brokers". It doesn't provide you HA by default, but two
> groups
> > > can be configured for HA. It's a little bit wasteful because you will
> > have
> > > to add 3-4 broker to satisfy your requirements, but generally it works.
> > >
> > > I recommend reading RedHat's AMQ (which is based on Artemis) clustering
> > > documentation at
> > >
> >
> https://docs.redhat.com/en/documentation/red_hat_amq/7.4/html/configuring_amq_broker/setting-up-broker-cluster-configuring#setting-up-broker-cluster-configuring
> > > . They have a little bit more information and some nice pictures to
> > > understand how Artemis clustering can be configured.
> > >
> > > --
> > >     Vilius
> > >
> > > -----Original Message-----
> > > From: William Crowell <wcrow...@perforce.com.INVALID>
> > > Sent: Tuesday, March 18, 2025 1:53 PM
> > > To: users@activemq.apache.org
> > > Subject: Re: What HA Replication Policy Is For Active-Active Topology
> > >
> > > Domenico,
> > >
> > > Hi.  I require 2 brokers to be primary/active at the same time.  The
> way
> > > the documentation is written it does not come out and say you can run
> > with
> > > that configuration; however, this statement leads you to believe that
> > > configuration is possible:
> > >
> > >
> > >
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fclusters.html%23performance-considerations&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782359311%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=u4aZhzQEg1%2FrvBe0reOgNBWC6Iq%2FBNJPZWLfAjrtpwg%3D&reserved=0
> <
> https://activemq.apache.org/components/artemis/documentation/latest/clusters.html#performance-considerations
> >
> > <
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fclusters.html%23performance-considerations&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782377197%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=LNk1R71y9kvUz8i5LIud%2BWGFZc5HsLKvZGE1U1%2F%2BZpo%3D&reserved=0
> <
> https://activemq.apache.org/components/artemis/documentation/latest/clusters.html#performance-considerations
> >
> > >
> > > <
> > >
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fclusters.html%23performance-considerations&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782387158%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=vDpRQuuCcBAiTPnbievw%2FGgnk4h2ZQhTzFnNsReTVg8%3D&reserved=0
> <
> https://activemq.apache.org/components/artemis/documentation/latest/clusters.html#performance-considerations
> >
> > <
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fclusters.html%23performance-considerations&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782397013%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=2qMlAkLr8ExOqmvjg%2FUSw40r45ZsTZxkmN5V%2FI3y2Tk%3D&reserved=0
> <
> https://activemq.apache.org/components/artemis/documentation/latest/clusters.html#performance-considerations
> >
> > >
> > > >
> > >
> > >
> > >   1.  “Start simple. Benchmark your use-case with a single broker
> first.
> > A
> > > single broker can handle millions of messages per second in certain
> > > use-cases. If you can’t meet your performance goal with a single broker
> > > only then move to a clustered configuration. Only add complexity when
> > there
> > > is a clear benefit.”
> > >
> > > Regards,
> > >
> > > William Crowell
> > >
> > > From: Domenico Francesco Bruscino <bruscin...@gmail.com>
> > > Date: Tuesday, March 18, 2025 at 6:15 AM
> > > To: users@activemq.apache.org <users@activemq.apache.org>
> > > Subject: Re: What HA Replication Policy Is For Active-Active Topology
> Hi
> > > William,
> > >
> > > the HA policies allow the system to continue functioning after failure
> of
> > > one or more of the servers. They require at least 2 brokers to work.
> The
> > > first broker is active and the second broker waits for the first broker
> > > failure to replace it reloading durable/persisted messages. In this
> way,
> > > the client connections can migrate from one server to another in event
> of
> > > server failure so client applications can continue to operate.
> > >
> > > Can you clarify your expectations from an active/active deployment?
> > >
> > > Regards,
> > > Domenico
> > >
> > > On Mon, 17 Mar 2025 at 16:22, William Crowell
> > > <wcrow...@perforce.com.invalid>
> > > wrote:
> > >
> > > > Good morning,
> > > >
> > > > It appears all HA policies are for active/passive setup.  Are there
> > > > any for active/active?  Does this exist?
> > > >
> > > > I was reading through:
> > > >
> > >
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fha&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782406657%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=s%2Fp9QH4mTfI3b79d%2BDExCGLzVLSmCcWzR9SVyLRbpwY%3D&reserved=0
> <https://activemq.apache.org/components/artemis/documentation/latest/ha>
> > <
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fha&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782415951%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=n7sA2vDKZdPyk4uq4YnCqe%2FHdbBbIi8H%2Fp%2BOeADezmI%3D&reserved=0
> <https://activemq.apache.org/components/artemis/documentation/latest/ha>>
> > > <
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fha&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782425482%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=1sFhu8moS5A1f7%2Bkurvb1E%2F121onbcI75NKiQBSlbHc%3D&reserved=0
> <https://activemq.apache.org/components/artemis/documentation/latest/ha>
> > <
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Fha&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782435054%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=R%2FRxS8Yn4Bcb%2FumyqF%2BUws3ij2rHb%2F6%2FIFtJwapRz44%3D&reserved=0
> <https://activemq.apache.org/components/artemis/documentation/latest/ha>>>
> > > > .html#replication<
> > >
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocum&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782444470%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=2312P%2Fx3UGh0Bz%2Buw7Yha78FQl63pSIVv0qtl9ZxyX0%3D&reserved=0
> <https://activemq.apache.org/components/artemis/docum>
> > <
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocum&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782454047%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=ycf7sDH69YMZ5CO8Qv%2Fk5l5ltHBMHlT1CjnVo1U3zKQ%3D&reserved=0
> <https://activemq.apache.org/components/artemis/docum>>
> > > > entation/latest/ha.html#replication>
> > > >
> > > > For example, you have 2 Artemis brokers and you want them both to be
> > > > active at the same time, and the data directories are separate.
> > > >
> > > > Would you just specify the following in broker.xml on both servers?
> > > >
> > > > <ha-policy>
> > > >    <replication>
> > > >       <primary/>
> > > >    </replication>
> > > > </ha-policy>
> > > >
> > > > I looked through the examples here and could not find it (unless I
> > > > missed
> > > > it):
> > > >
> > > >
> > > >
> https://github.com/apache/activemq-artemis-examples/tree/main/examples
> > > > /features/ha
> > > >
> > > > Regards,
> > > >
> > > > William Crowell
> > > >
> > > >
> > > > This e-mail may contain information that is privileged or
> > > > confidential. If you are not the intended recipient, please delete
> the
> > > > e-mail and any attachments and notify us immediately.
> > > >
> > > >
> > >
> > >
> > > CAUTION: This email originated from outside of the organization. Do not
> > > click on links or open attachments unless you recognize the sender and
> > know
> > > the content is safe.
> > >
> > >
> > > This e-mail may contain information that is privileged or confidential.
> > If
> > > you are not the intended recipient, please delete the e-mail and any
> > > attachments and notify us immediately.
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org
> > > For additional commands, e-mail: users-h...@activemq.apache.org
> > > For further information, visit:
> > >
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcontact&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782463856%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=Ax3%2FcGcSzLN9JDvPI3HyCtNdOhjqo4K%2BQsE1KNtkQqs%3D&reserved=0
> <https://activemq.apache.org/contact>
> > <
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcontact&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782473093%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=hYnHnhTUS%2BytIB5WbiifB7Lv5P8rOAqhknDKnZI%2FZqw%3D&reserved=0
> <https://activemq.apache.org/contact>>
> > > <
> >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcontact&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782481962%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=4MKphdEjqKSAufcKcTMc8rUp3abEVQmXYSWWlAQru5o%3D&reserved=0
> <https://activemq.apache.org/contact>
> > <
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcontact&data=05%7C02%7CWCrowell%40perforce.com%7C79f0c36b0b7a426a7b8908dd66eb3ee5%7C95b666d19a7549ab95a38969fbcdc08c%7C0%7C0%7C638779882782493973%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=%2BZEolX7buXTaaOrc2SkPOsvUnO9Ty3dWOegZqbnCUqg%3D&reserved=0
> <https://activemq.apache.org/contact>>>
> > >
> > >
> > >
> > >
> > > CAUTION: This email originated from outside of the organization. Do not
> > > click on links or open attachments unless you recognize the sender and
> > know
> > > the content is safe.
> > >
> > >
> > > This e-mail may contain information that is privileged or confidential.
> > If
> > > you are not the intended recipient, please delete the e-mail and any
> > > attachments and notify us immediately.
> > >
> > >
> >
> >
> > CAUTION: This email originated from outside of the organization. Do not
> > click on links or open attachments unless you recognize the sender and
> know
> > the content is safe.
> >
> >
> > This e-mail may contain information that is privileged or confidential.
> If
> > you are not the intended recipient, please delete the e-mail and any
> > attachments and notify us immediately.
> >
> >
>
>
> CAUTION: This email originated from outside of the organization. Do not
> click on links or open attachments unless you recognize the sender and know
> the content is safe.
>
>
> This e-mail may contain information that is privileged or confidential. If
> you are not the intended recipient, please delete the e-mail and any
> attachments and notify us immediately.
>
>

Reply via email to