Microsoft Sync Framework查询性能

时间:2008-11-12 16:18:14

标签: .net synchronization

我们正在开发一种依赖Microsoft Sync Framework的产品,以保持客户端应用程序和服务器上的数据同步。我们注意到的是,当同步大约16个表和~2200个记录时,大约需要4分钟,这是不可接受的。

使用SQL Server Profiler,我们发现它使用sp_executesql来执行查询。在没有sp_executesql的情况下运行时,特定查询在< 1s中运行,但是它需要超过10秒。

所以问题是:我们做错了什么,我们能做些什么来加快它。

2 个答案:

答案 0 :(得分:2)

sp_executesql正在使用动态sql。每一行都在进行单独处理。

4分钟似乎相当长,您应该查看16个表的设计并检查它们的性能。尝试使用执行计划来查看瓶颈可能发生的位置。

查看涵盖基础知识的链接:

SQL Execution Plan basics

尝试向下滚动到文章的底部,其中有SQL Management Studio中实际图形界面的屏幕截图。本文有一些无聊的部分,但您至少可以看到图形执行计划及其好处。

答案 1 :(得分:0)

Sync Framework 2.0的“新功能”部分列出了MSDN上的效果改进。

  

绩效改进

     

此版本中的新数据库提供程序   已经过大量的彻底测试   扩展单个场景   服务器支持数千个客户端   有数百个并发   同步操作。这个   测试导致了大量的   内部绩效改进   启用S​​ync Framework数据库   提供者和其他提供者一样   微软等远程技术   提供数据访问(RDA)   广泛的能力   与端到端的解决方案竞争   合并复制。