It's hard to comment without more clarity about your design goals and constraints. It's certainly true that LVQ + clustering is not a good fit (as noted in the docs [1]), but it's not clear why you're clustering in the first place or why you're not using an actual HA configuration. Also, did you consider using a connection router to ensure the clients using the LVQ get routed to the same node no matter where they connect originally?
Justin [1] https://activemq.apache.org/components/artemis/documentation/latest/last-value-queues.html#clustering On Fri, Jan 5, 2024 at 8:25 AM Shiv Kumar Dixit <shivkumar.di...@it.eurofinseu.com.invalid> wrote: > Thanks for the response. We are looking to use disabling clustering on > specific address to enable HA of LVQ. > > Current case: > 1. There are 2 nodes in a symmetric cluster. > 2. Producer can write LVQ message to any node of cluster. > 3. Consumer always connects to node1 of cluster to ensure all LVQ messages > are moved to node1 by virtue of clustering. Consumer builds a local > application cache using LVQ value. > 4. Producer can write updated LVQ message during course of time which can > be written to any node of cluster. Consumer keeps updating the cache if it > is latest message. > 5. If node1 is down then consumer is impacted and can't get LVQ messages > till node1 is back. > > Proposed case: > 1. There are 2 nodes in a symmetric cluster. > 2. We will disable clustering for LVQ address. > 3. Producer will write LVQ message to both nodes of cluster independently. > 4. Consumer will connect to both the nodes independently and read LVQ > messages from dedicated nodes. > 5. Consumer will take care of discarding any duplicate or state value > based on producer timestamp while building local application cache. > 6. Producer will write updated LVQ message during course of time which can > be written to all nodes of cluster. Consumer will keep updating the cache > if it is latest message. > 7. Even if any node is down, consumer will be able to get LVQ message from > available node and then decide to update cache or not based on producer's > timestamp. > > If this approach seems okay or there is other recommendation to ensure HA > of LVQ? > > Best Regards > Shiv > > -----Original Message----- > From: Justin Bertram <jbert...@apache.org> > Sent: 04 January 2024 08:27 PM > To: users@activemq.apache.org > Subject: Re: Disabling clustering for a some addresses > > > > CAUTION: EXTERNAL EMAIL - Sent from an email domain that is not formally > trusted by Eurofins. > > Do not click on links or open attachments unless you recognise the sender > and are certain that the content is safe. > > > Is it possible to disable clustering for some addresses? > > Yes. Just define the address(es) in the <address> element of the relevant > <cluster-connection> prepended with '!'. This syntax is noted in the > documentation [1]. > > > Justin > > [1] > > https://activemq.apache.org/components/artemis/documentation/latest/clusters.html#configuring-cluster-connections > > On Thu, Jan 4, 2024 at 7:32 AM Shiv Kumar Dixit > <shivkumar.di...@it.eurofinseu.com.invalid> wrote: > > > Hi, > > Is it possible to disable clustering for some addresses? > > > > E.g. if I have 2 nodes in a broker cluster and given address TEST.DEMO > > is present on both nodes. If messages are pending on node A and > > consumer connects to node B then by virtue of clustering, messages > > move from node A to node B and consumer on node B gets them. Is it > > possible to disable this movement for a given address and consumer on > > node B should only get messages when the pending messages are on node B > only? > > > > Thanks > > Shiv > > >