我正在开发一个在 Dynamics 365 CRM 中执行多项操作的 Azure Function。我不完全理解 Azure Functions 并发的工作原理。我有一个消费计划,我的 Azure 函数内部有一个由服务总线消息触发的函数。
当我第一次测试它时,服务总线收到大约 200 条消息,并且应用程序开始同时处理大量消息,向 Dynamics 365 发出大量无法处理的请求。因此,在 Azure 门户中,我设法将最大实例数设置为 1,但该函数仍然一次处理许多消息。对此设置限制的最佳方法是什么?在 host.json 中使用 maxConcurrentCalls?在 host.json 中使用 maxConcurrentSessions?在应用程序配置中使用 WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT 吗?
另外,将 maxConcurrentCalls 设置为 10 和 1 个函数实例或将其设置为 5 和 2 个函数实例有什么区别?