BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

dotTrace 6.1帮你理解SQL查询如何影响应用性能

| 作者 谢丽 关注 9 他的粉丝 发布于 2015年4月23日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

dotTrace是JetBrains公司旗下的一款.NET应用程序性能瓶颈检测工具。该工具是ReSharper旗舰版的一部分,也可以单独安装。近日,dotTrace 6.1发布,主要增加了人们期待已久的SQL查询性能分析,开发人员可以通过它获得特定查询的执行时间以及运行该查询的方法。该功能有如下特点:

  • 只能在时间线性能分析模式下进行;
  • 既可以分析独立应用程序的性能,也可以附加到一个已经运行着的进程上;
  • 支持SQLClient、OLE DB、Entity Framework和ODBC等数据提供程序;
  • 使用ETW收集SQL事件,实现性能分析开销最小化。

下面让我们看一下dotTrace 6.1如何帮助开发人员理解SQL查询对应用程序性能的影响。

在界面上,dotTrace 6.1唯一的变化是在“时间线查看器(Timeline Viewer)”的“间隔过滤器(Interval Filters)”中增加了SQL Client,如下图所示:

SQL Client事件指示了应用程序与SQL服务器的通信时长,也就是客户端发出请求到收到响应的时间间隔,其中包括打开/关闭连接、运行查询及其它SQL活动的时间,如下图所示:

从上图可以看出,SQL Client包含两个子过滤器SQL Client:Connection String 和SQL Client:Command,其中前者适用于应用程序使用多个SQL连接的情况,后者列出了不同查询耗费的时间。

当SQL语句比较长时,开发人员可以打开SQL查询窗口进行查看,如下图所示:

双击特定的SQL会打开其它所有的过滤器,包括“调用栈(Call Stack)”,如下图所示:

其中,“上层方法(Top Methods)”列出了该语句在不同方法中执行时耗费的时间。选定一个特定的方法,源代码就会显示在“源代码查看器(Source View)”中,如下图所示:

感兴趣的读者可以下载试用,免费试用期为10天。需要注意的是,dotTrace 6.1支持Visual Studio 2015、2013、2012和2010,但与Visual Studio中集成的ReSharper 8.x、dotCover 2.x、dotMemory 4.1或更低版本不兼容。安装dotTrace 6.1会从Visual Studio中删除旧版本的JetBrains .NET工具。


感谢徐川对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT