azure service bus queue with multiple listeners / competing consumers with queue
Theoretically it looks like azure service bus queues is one to one with respect to message and receiver.
Just wanted to know if it's possible to have more than one listeners to a queue.
If it is 1:1, does it mean to realize competing consumers pattern we cannot use queues, and topics is the only option?
azure azureservicebus azure-servicebus-queues
add a comment |
Theoretically it looks like azure service bus queues is one to one with respect to message and receiver.
Just wanted to know if it's possible to have more than one listeners to a queue.
If it is 1:1, does it mean to realize competing consumers pattern we cannot use queues, and topics is the only option?
azure azureservicebus azure-servicebus-queues
add a comment |
Theoretically it looks like azure service bus queues is one to one with respect to message and receiver.
Just wanted to know if it's possible to have more than one listeners to a queue.
If it is 1:1, does it mean to realize competing consumers pattern we cannot use queues, and topics is the only option?
azure azureservicebus azure-servicebus-queues
Theoretically it looks like azure service bus queues is one to one with respect to message and receiver.
Just wanted to know if it's possible to have more than one listeners to a queue.
If it is 1:1, does it mean to realize competing consumers pattern we cannot use queues, and topics is the only option?
azure azureservicebus azure-servicebus-queues
azure azureservicebus azure-servicebus-queues
asked Nov 13 '18 at 8:58
finchfinch
453
453
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
There is a big difference between queues and topics: with queues, each message is picked up by only 1 consumer. With a topic, every consumer that subscribed to the topic will get each message (although there is room to filter...). If your scenario requires each message to be processed by only one consumer, use queues. If all of the registered processes need to work on it, use topics.
You can have multiple listeners to a queue. Let's say we have Process A and Process B that both listen to the queue. A message comes in, and Process A picks it up. If another message comes in and Process A hasn't finished yet, Process B will pick up the message. If Process A is ready, either one of the processes can pick up the second message.
For more info on competing consumers, have a look at the Competing Consumers article on the Azure Architecture Center, complete with (references to) example code.
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53277200%2fazure-service-bus-queue-with-multiple-listeners-competing-consumers-with-queue%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
There is a big difference between queues and topics: with queues, each message is picked up by only 1 consumer. With a topic, every consumer that subscribed to the topic will get each message (although there is room to filter...). If your scenario requires each message to be processed by only one consumer, use queues. If all of the registered processes need to work on it, use topics.
You can have multiple listeners to a queue. Let's say we have Process A and Process B that both listen to the queue. A message comes in, and Process A picks it up. If another message comes in and Process A hasn't finished yet, Process B will pick up the message. If Process A is ready, either one of the processes can pick up the second message.
For more info on competing consumers, have a look at the Competing Consumers article on the Azure Architecture Center, complete with (references to) example code.
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
add a comment |
There is a big difference between queues and topics: with queues, each message is picked up by only 1 consumer. With a topic, every consumer that subscribed to the topic will get each message (although there is room to filter...). If your scenario requires each message to be processed by only one consumer, use queues. If all of the registered processes need to work on it, use topics.
You can have multiple listeners to a queue. Let's say we have Process A and Process B that both listen to the queue. A message comes in, and Process A picks it up. If another message comes in and Process A hasn't finished yet, Process B will pick up the message. If Process A is ready, either one of the processes can pick up the second message.
For more info on competing consumers, have a look at the Competing Consumers article on the Azure Architecture Center, complete with (references to) example code.
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
add a comment |
There is a big difference between queues and topics: with queues, each message is picked up by only 1 consumer. With a topic, every consumer that subscribed to the topic will get each message (although there is room to filter...). If your scenario requires each message to be processed by only one consumer, use queues. If all of the registered processes need to work on it, use topics.
You can have multiple listeners to a queue. Let's say we have Process A and Process B that both listen to the queue. A message comes in, and Process A picks it up. If another message comes in and Process A hasn't finished yet, Process B will pick up the message. If Process A is ready, either one of the processes can pick up the second message.
For more info on competing consumers, have a look at the Competing Consumers article on the Azure Architecture Center, complete with (references to) example code.
There is a big difference between queues and topics: with queues, each message is picked up by only 1 consumer. With a topic, every consumer that subscribed to the topic will get each message (although there is room to filter...). If your scenario requires each message to be processed by only one consumer, use queues. If all of the registered processes need to work on it, use topics.
You can have multiple listeners to a queue. Let's say we have Process A and Process B that both listen to the queue. A message comes in, and Process A picks it up. If another message comes in and Process A hasn't finished yet, Process B will pick up the message. If Process A is ready, either one of the processes can pick up the second message.
For more info on competing consumers, have a look at the Competing Consumers article on the Azure Architecture Center, complete with (references to) example code.
edited Nov 13 '18 at 10:40
answered Nov 13 '18 at 9:13
rickvdboschrickvdbosch
4,00621526
4,00621526
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
add a comment |
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
So competing consumers is possible with queues, right?
– finch
Nov 13 '18 at 10:31
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
@finch Yes, it is. There are links to an example implementation the article I linked to.
– rickvdbosch
Nov 13 '18 at 10:32
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53277200%2fazure-service-bus-queue-with-multiple-listeners-competing-consumers-with-queue%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown