Hi Domenico,

Will investigate your enhancement, could be the answer!

Thanks,

Dave



On Fri, Jul 23, 2021, 1:37 PM Domenico Francesco Bruscino, <
bruscin...@gmail.com> wrote:

> Hi David,
>
> it could be a timing issue, when a first client connects to a broker, it
> sends a notification to other brokers of the cluster. So if a second client
> with the same clienID connects to another broker of the cluster before it
> receive the notification, the second broker accepts the connection.
>
> You could easily fix this issue by redirecting each client with the same
> clientID to the same broker.
>
> Regards,
> Domenico
>
>
> On Fri, 23 Jul 2021 at 14:02, David Martin <dav...@qoritek.com> wrote:
>
> > Hi Domenico,
> >
> > OK thanks I'll have a look at that.
> >
> > Was considering writing a plugin to block authorisation when the same
> > client ID is already connected elsewhere on the cluster, with leader
> > election via a multicast queue.
> >
> > I'm puzzled why it's behaving this way though. It's not consistent.
> Usually
> > it prevents the double connection but on occasion it doesn't.
> >
> >
> >
> > Dave
> >
> >
> > On Fri, 23 Jul 2021 at 10:48, Domenico Francesco Bruscino <
> > bruscin...@gmail.com> wrote:
> >
> > > Hi Dave,
> > >
> > > I'm working on a new ActiveMQ Artemis feature that allows users to
> > > balance incoming client connections according to their ClientID (or
> other
> > > connection parameters), see the draft documentation[2] for further
> > details.
> > >
> > > [2]
> > >
> > >
> >
> https://github.com/brusdev/activemq-artemis/blob/broker_balancers/docs/user-manual/en/broker-balancers.md
> > >
> > > Regards,
> > > Domenico
> > >
> > > On Fri, 23 Jul 2021 at 11:01, David Martin <dav...@qoritek.com> wrote:
> > >
> > > > Hi all,
> > > >
> > > > Puzzled by some behaviour we're seeing on a broker cluster of 3 live
> > > > Artemis v2.16.0 brokers hosted on k8s which has an F5 in front of it
> > > > terminating TLS and routing to a k8s node port forwarding to an AMQP
> > > > acceptor for each broker. The cluster is healthy and has been up for
> > > about
> > > > 2 months without interruption. Each broker has its own storage. The
> > > address
> > > > routing is set up with redistribution delay = 0 and the clustering is
> > > using
> > > > all default settings and static discovery.
> > > >
> > > > Clients all use *non-shared* durable topic subscriptions via QPID JMS
> > > v1.0.
> > > >
> > > > What we're seeing is that if two separate physical clients attempt to
> > > open
> > > > a connection using the same client ID, Artemis *occasionally* allows
> > both
> > > > to succeed and allows both to consume the durable subs on 2 different
> > > > brokers. I thought this was only possible if round-robin routing was
> > > > explicitly enabled on the clustering configuration by configuring
> > STRICT
> > > > message load balancing instead of the default ON_DEMAND. Of course,
> due
> > > to
> > > > the F5, it will appear to Artemis that both clients are running on
> the
> > > same
> > > > physical host.
> > > >
> > > > Is there some "belt and braces" way to prevent 2 connections with one
> > > > client id in addition to the message load balancing configuration?
> > > >
> > > >
> > > > Thanks,
> > > >
> > > > Dave
> > > >
> > >
> >
>

Reply via email to