很长时间在.NET中加载第一个sql连接

时间:2010-04-09 20:49:15

标签: c# asp.net sql-server ado.net

由于某种原因,在第一次打开与sql server数据库的连接需要7秒,后续连接需要一秒钟。任何想法可能是什么原因?

我正在使用C#和asp.net

它在编译之后,每次我重新启动网站时都是本质的,这意味着每次需要实际创建“第一”连接。我知道设置连接池有开销,但我从未见过我应该花7秒钟进行设置。

3 个答案:

答案 0 :(得分:1)

第一次建立连接时会产生很多开销。每个后续连接都使用连接池(假设您具有相同的连接字符串),并且不需要进行初始设置。

修改:有关连接池的一些信息,请参阅this linkthis one

答案 1 :(得分:1)

除连接池和CLR编译外,不要忘记数据库服务器上的数据和计划缓存也可能“冷”......

我看到第一次打电话给一个非常“冷”的网站需要5-10秒来响应按钮点击(例如“搜索”)到屏幕上的数据。

答案 2 :(得分:0)

每次编译后都是这个吗?由于JIT编译而不是SqlConnection本身是“滞后时间”吗?