【发布时间】:2017-07-05 08:05:03
【问题描述】:
我正在使用 SQL Server Profiler 为我使用 Visual Studio 和 IIS Express 开发的 C# 应用程序分析一些 MS SQL 查询:
为“审核注销”事件指定的持续时间(16876 毫秒)是登录和注销之间的总时间。查询的持续时间仅为 60 毫秒。
登录/注销事件与设置/拆除有关。
来自What is "Audit Logout" in SQL Server Profiler?
我想更详细地了解 16816 毫秒(= 16876 毫秒 - 60 毫秒)的时间差。
a) 是否可以记录更多事件(如“调试模式”)?
b) 因为“Audit Login”事件的结束时间与查询执行的开始时间相同,所以假设时间差只是因为拆机是对的吗?
c) 是否有其他工具可用于分析(设置和)拆卸时间?
d) 时差是否取决于我的查询?换句话说:查询的优化是否也有助于减少时间差?
到目前为止,我对@DevTime 观察到的是,如果我第一次启动我的应用程序会有所不同(IIS Express 由 Visual Studio 启动,数据库是使用实体框架创建的,示例数据被写入数据库) 或者如果我在数据库已经存在时第二次启动它。
第一次启动后的登录时间差比第二次启动后的登录时间差大约 15 秒。上面示例中标记的查询是在用户登录后执行的。因此,我希望当时数据库的初始化已经完成,并且初始化不会对时差产生任何影响。不过好像也有影响。
一些相关文章:
【问题讨论】:
标签: profiling query-optimization sql-server-profiler