【发布时间】:2018-12-26 09:15:42
【问题描述】:
我们在 Microsoft Dynamics 2016 中遇到了问题。CRM 性能非常好,但对于某些用户来说却很糟糕。
例如,保存一封电子邮件通常需要 0.5 秒,但对于这些用户来说,则需要 10 秒或更长时间!
我们已禁用所有自定义、更改客户端系统、检查网络等,但存在问题。
我们通过 fiddler 监控 CRM 流程,ServerBeginResponse 有更多延迟。
请帮我解决这个问题。
谢谢
【问题讨论】:
-
这可能是导致性能缓慢的一系列原因,无法在这里解决,但我会检查这些用户是否位于不同的业务部门或具有不同的安全角色,因为这可能会影响生成的 SQL 查询类型。您没有说这是在线还是 OnPrem,但如果是 OnPrem,您也许可以使用通用 SQL 调优和解决关键缺失索引来解决。
-
我在 CRM 中创建了一个具有相同业务部门和安全角色的用户,但没有发现任何问题。但是这些用户仍然有问题。这是内部部署。SQL Tuning 必须设置什么?可能缺少哪些索引?
-
@Aramis2800 - 对于本地不要推测 - 打开 SQL 服务器分析器并观察当这个人尝试执行他的操作时所做的查询 - 你应该能够推断出有问题的查询从 SQL Server 用于解决这些问题的时间开始。 CRM 使用行级安全性 - 系统管理员绕过了一些检查,并且通常系统管理员享受改进的性能,因为在 SQL 级别上,他们不必通过这些检查。
-
不幸的是,SQL Profiler 在查询中没有显示任何减慢。查询的持续时间(RPC:已完成)低于 1 秒,但审核注销的持续时间超过 1 秒。我的缓慢问题在保存电子邮件时很明显。但是插入与保存电子邮件相关的查询具有正常的速度。另一方面,所有用户的查询都是相同的,如果查询很慢,所有用户都必须看到它,但只有一个用户面临缓慢的问题。