将业务逻辑添加到插件时,应注意插件对整体系统性能的影响。
时间和资源约束
Dataverse 消息操作必须在 2 分钟时限 内完成。 此限制包括执行预期的消息操作以及所有已注册的同步和异步插件。扩展可以使用的 CPU 和内存资源量也有限制。 如果超过这些限制,Dataverse 将抛出异常,整个消息操作都会被取消(回滚)。
如果超过时限,Dataverse 会抛出 TimeoutException。 如果任何自定义扩展超出阈值 CPU、内存或句柄限制,或者无响应,Dataverse 将终止该进程。 此时,该进程中的任何当前扩展都失败并出现异常。 但是,下次执行扩展时,该扩展将正常运行。
Important
无法控制消息操作或其他同步注册插件的执行时间。 只能根据插件的设计和编码来控制插件执行所需的时间。
我们的一般建议是将插件执行所需的时间限制为不超过 2 秒。
如果插件需要执行 2 秒以上,请考虑注册插件进行异步执行,而不是同步执行。 事实上,应尽可能先考虑异步执行,因为它会导致更好的应用程序响应能力和系统可伸缩性。
详细信息:有关 插件和工作流开发的最佳做法和指南
监控性能
Important
此功能不再正常运行或受支持。 请勿使用。
将在将来的文章更新中删除此部分。
有关插件和自定义工作流扩展的运行时信息捕获并存储在 PluginTypeStatistic 表中。 这些记录会在自定义代码执行后的 30 分钟到 1 小时内填充完成。
插件性能分析
除了使用调试器和分析器来了解插件在代码级别的性能表现外,还可以通过Microsoft Dataverse analytics以交互方式获取组织中已注册的插件的整体性能指标。
通过 插件 仪表板,可以查看指标,例如平均执行时间、故障、大多数活动插件等。
若要访问仪表板,请导航到 Power Platform 管理中心。 选择 分析>Dataverse>插件。
另见
使用插件扩展业务流程
使用 ILogger 将遥测数据写入 Application Insights 资源
教程:调试插件
调试插件