【发布时间】:2013-12-31 09:33:13
【问题描述】:
我之前曾向question 询问过一个在 sql server 机器上执行速度太慢的存储过程,但是,如果我在查询分析器中运行存储过程,它会在一秒钟内返回。客户端是一个 .NET 1.1 winforms 应用程序。
我能够将 VNC 输入到用户的盒子中,当然,他们没有安装 SQL 工具,所以我启动了 Excel,进入 VBA 并编写了一个快速函数来调用具有完全相同参数的存储过程。
事实证明,存储过程确实返回亚秒级,我可以立即循环遍历所有行。但是,关闭连接需要很长时间,从 5 秒到 30 秒不等。
为什么关闭连接需要这么长时间?
【问题讨论】:
-
我们发现了问题。由于电池没电了,本地 IT 禁用了 RAID 阵列上的读/写缓存。不要问我为什么 RAID 阵列是靠电池运行的。
-
电池用于将 RAID 控制器的缓存保存在内存中。这样,如果在写入过程中断电,RAID 控制器会保留需要写入磁盘的数据,从而保证您的阵列安全。当电池没电时,缓存将被禁用。
标签: performance sql-server-2005 connection