How to control the concurrency of Azure Event Grid trigger
I found the host.json which tells how to control behavior of my Function app. But it doesn't show entries about event grid trigger.
I was wondering as publisher(in my case, events related to blob storage) sends http requests to my function, does it mean I can control Event trigger with http configuration? By the way it's preferred not to realize custom Http trigger to handle events but if it's the only way, I may have to accept it.
azure azure-functions azure-eventgrid
|
show 2 more comments
I found the host.json which tells how to control behavior of my Function app. But it doesn't show entries about event grid trigger.
I was wondering as publisher(in my case, events related to blob storage) sends http requests to my function, does it mean I can control Event trigger with http configuration? By the way it's preferred not to realize custom Http trigger to handle events but if it's the only way, I may have to accept it.
azure azure-functions azure-eventgrid
2
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
1
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20
|
show 2 more comments
I found the host.json which tells how to control behavior of my Function app. But it doesn't show entries about event grid trigger.
I was wondering as publisher(in my case, events related to blob storage) sends http requests to my function, does it mean I can control Event trigger with http configuration? By the way it's preferred not to realize custom Http trigger to handle events but if it's the only way, I may have to accept it.
azure azure-functions azure-eventgrid
I found the host.json which tells how to control behavior of my Function app. But it doesn't show entries about event grid trigger.
I was wondering as publisher(in my case, events related to blob storage) sends http requests to my function, does it mean I can control Event trigger with http configuration? By the way it's preferred not to realize custom Http trigger to handle events but if it's the only way, I may have to accept it.
azure azure-functions azure-eventgrid
azure azure-functions azure-eventgrid
asked Nov 15 '18 at 23:02
Allen WalkerAllen Walker
407
407
2
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
1
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20
|
show 2 more comments
2
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
1
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20
2
2
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
1
1
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20
|
show 2 more comments
0
active
oldest
votes
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%2f53329091%2fhow-to-control-the-concurrency-of-azure-event-grid-trigger%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
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%2f53329091%2fhow-to-control-the-concurrency-of-azure-event-grid-trigger%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
2
If you're concerned about rate, you could have EventGrid events go into a queue to level the load.
– Sean Feldman
Nov 15 '18 at 23:28
@SeanFeldman Thanks, do you mean it's a good choice to work with Queuetrigger instead and configure the concurrency of queue?
– Allen Walker
Nov 18 '18 at 0:56
Yes. Control what you can.
– Sean Feldman
Nov 18 '18 at 5:53
1
@AllenWalker The EventGridTrigger is a Push trigger comparing to the QueueTrigger such as a Pull one, which allows to you a controlling concurrency on the consumer side. For increasing a concurrency on the subscriber side, there is an option to push the event grid events to the EventHub Subscriber with multiple partitions. Using a batch processing on the consumer side will allow for EventHubTrigger increase a concurrency and also capability to use a streaming technology (ASA job, etc.)
– Roman Kiss
Nov 18 '18 at 6:34
@RomanKiss Thanks a lot for the points, looks like I should go back to review the docs before going forward to decide the pattern.
– Allen Walker
Nov 19 '18 at 15:20