If your getting an error such as Application is over its MailboxConcurrency limit while using the Microsoft Graph API this post may help you understand why.
The Mailbox concurrency limit when your using the Graph API is 4 as per https://docs.microsoft.com/en-us/graph/throttling#outlook-service-limits . This is evaluated for each app ID and mailbox combination so this means you can have different apps running under the same credentials and the poor behavior of one won't cause the other to be throttled. If you compared that to EWS you could have up to 27 concurrent connections but they are shared across all apps on a first come first served basis.
BatchingBatching in the Graph API is a way of combining multiple requests into a single HTTP request. Batching in the Exchange Mail API's EWS and MAPI has been around for a long time and its common, for email Apps to process large numbers of smaller items for a variety of reasons. Batching in the Graph is limited to a maximum of 20 items per batch.
- test,test,test to see what works best for you
- Make sure you always create a separate App registration for your apps (never reuse)
- Think about your context, if there is a chance your going to have multiple instances of your app running at the same time using the same user think about your batching strategy .
- Make sure you process the throttling responses, retrying your op at least once shouldn't be a big deal