2

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.

  • 3
    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 00:56
  • Yes. Control what you can. – Sean Feldman Nov 18 '18 at 05: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 06: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 if I put 10,000 events onto a topic, will event grid make 10,000 concurrent calls to my webhook? Probably not. What will it attempt though? I can't find much info on this at all, other than "control scaling on the consumer side". – kayjtea Feb 07 '19 at 19:23
  • @kayjtea The AEG is a Push-Push eventing model, there is no data (message) pipeline. The publish rate for topic is 5000 events per second, max number of subscription per topic is 500, scalability for event distribution is 10 millions per region, latency for event delivery is very low closed to real time. The AEG runs an event delivery in the concurrency manner. For instance: EventHub-Dedicated Subscriber can handle ingress over 2 millions events pre second. If your webhook can handle this kind of concurrency, then the AEG will deliver all events in the close to real-time. – Roman Kiss Feb 08 '19 at 08:59

0 Answers0