You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by CASAUX Nicolas <ni...@soprasteria.com> on 2022/04/25 13:39:39 UTC

[Artermis] STOMP & shared non-durable subscription

Hello,

I managed to successfully create a shared durable subscription using a "client-id" and a "durable-subscriber-name" with the STOMP protocol.

However, always with STOMP, I can't find a way to create a shared non-durable subscription. When I set only the "client-id", it does not seem to be used to create the queue name. I thought that providing the "cliend-id" would allow customers using the same "client-id" to use the same queue, but it is not what is happening. Am I missing something ?

I'm using Artemis 2.20.0

Thanks in advance.

Nicolas


C2 - Usage restreint

RE: [Artermis] STOMP & shared non-durable subscription

Posted by CASAUX Nicolas <ni...@soprasteria.com>.
Thank you Justin,

I managed to reproduce what you suggested, using FQDN with STOMP and its synthax for special characters like ":"
/send SUBSCRIBE\ndestination:myAddress\\c\\cmyQueue\n\n\0

Nicolas


C2 - Usage restreint 

-----Message d'origine-----
De : Justin Bertram <jb...@apache.org> 
Envoyé : lundi 25 avril 2022 18:23
À : users@activemq.apache.org
Objet : Re: [Artermis] STOMP & shared non-durable subscription

As you observed, the queue automatically created for a non-durable subscription for a STOMP client is not named according to the client-id. It uses a UUID which means the name is non-deterministric and therefore can't be readily shared across multiple clients. However, you should be able to use FQQN [1] to get the behavior you want since all you need to "share" the subscription is for all the consumers to connect to the same queue.

Hope that helps.


Justin

[1]
https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Factivemq.apache.org%2Fcomponents%2Fartemis%2Fdocumentation%2Flatest%2Faddress-model.html%23fully-qualified-queue-names&amp;data=05%7C01%7Cnicolas.casaux%40soprasteria.com%7C039a2b040d79454db40108da26d7ed71%7C8b87af7d86474dc78df45f69a2011bb5%7C0%7C0%7C637865006108973538%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=I230hxkqq5AoGTPab7fEcFyeJURCYJjOIqQPNWfp05M%3D&amp;reserved=0

On Mon, Apr 25, 2022 at 8:39 AM CASAUX Nicolas < nicolas.casaux@soprasteria.com> wrote:

> Hello,
>
> I managed to successfully create a shared durable subscription using a 
> "client-id" and a "durable-subscriber-name" with the STOMP protocol.
>
> However, always with STOMP, I can't find a way to create a shared 
> non-durable subscription. When I set only the "client-id", it does not 
> seem to be used to create the queue name. I thought that providing the 
> "cliend-id" would allow customers using the same "client-id" to use 
> the same queue, but it is not what is happening. Am I missing something ?
>
> I'm using Artemis 2.20.0
>
> Thanks in advance.
>
> Nicolas
>
>
> C2 - Usage restreint
>

Re: [Artermis] STOMP & shared non-durable subscription

Posted by Justin Bertram <jb...@apache.org>.
As you observed, the queue automatically created for a non-durable
subscription for a STOMP client is not named according to the client-id. It
uses a UUID which means the name is non-deterministric and therefore can't
be readily shared across multiple clients. However, you should be able to
use FQQN [1] to get the behavior you want since all you need to "share" the
subscription is for all the consumers to connect to the same queue.

Hope that helps.


Justin

[1]
https://activemq.apache.org/components/artemis/documentation/latest/address-model.html#fully-qualified-queue-names

On Mon, Apr 25, 2022 at 8:39 AM CASAUX Nicolas <
nicolas.casaux@soprasteria.com> wrote:

> Hello,
>
> I managed to successfully create a shared durable subscription using a
> "client-id" and a "durable-subscriber-name" with the STOMP protocol.
>
> However, always with STOMP, I can't find a way to create a shared
> non-durable subscription. When I set only the "client-id", it does not seem
> to be used to create the queue name. I thought that providing the
> "cliend-id" would allow customers using the same "client-id" to use the
> same queue, but it is not what is happening. Am I missing something ?
>
> I'm using Artemis 2.20.0
>
> Thanks in advance.
>
> Nicolas
>
>
> C2 - Usage restreint
>