IIS7性能问题

时间:2011-11-25 09:07:13

标签: asp.net .net performance iis-7

我们真的需要专家对IIS7的看法,我会尽力描述我们的问题。如果您需要更多信息,请告诉我,我会检索它。

我们有一个ASP.NET网站,它引用了几个.NET DLL,而且我们的客户表现非常出色!在我们自己的测试服务器上,相同的数据集需要25秒(仍然不快但这是另一个问题)而在我们的客户花了6分钟!

我在我能想到的每个可能的例程中写了日志,记录了它花了多长时间。它表明,在所有DLL的所有例程中,代码的处理只需要在我们的客户端上花费更长的时间。

为了进一步测试这个,我创建了一个桌面应用程序,它引用完全相同的DLL并在客户端运行它。那6分钟降到了...... 5秒!什么......?

我们浏览了IIS7中的所有设置并将其与我们的IIS7进行了比较......我们真的很难过,诚实地承认。客户端服务器的规格甚至高于我们的规格!

让我们放大问题。我们正在讨论一个实例化对象并设置3个属性的函数。没有数据库连接,没什么特别的,非常简单:

'Creates a GeneralPractitioner
   Public Shared Function Create(ByVal gp As GeneralPractitionerTO) As GeneralPractitioner

'HACK Temporarily write to a logfile.
        WebHISPortaalBLL.WriteToLo
g.WriteToLog(Now.ToString("dd-MM-yyyy HH:mm:ss.fff") & " BEGIN WebHISPortaalBLL.GeneralPractitioner.Create", String.Empty, "PerformanceTest")

'Check if parameter is not nothing.
        If gp IsNot Nothing Then

'Create new instance of GeneralPractitioner and set properties in object initializer.
            Return New GeneralPractitioner With {.ID = gp.ID,
                                                 .Name = gp.Name,
                                                 .AGBCode = gp.AGBCode}

        Else
            Return Nothing
        End If

    End Function 

调用代码是LINQ查询,因此两者之间没有任何内容。现在看看差异。首先,我将在我们的测试服务器上发布一小段日志文件,看看毫秒。

我们的测试服务器上的这个方法:

  

24-11-2011 15:23:34.526开始   WebHISPortaalBLL.GeneralPractitioner.Create 24-11-2011 15:23:34.527   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create 24-11-2011   15:23:34.528 BEGIN WebHISPortaalBLL.GeneralPractitioner.Create   24-11-2011 15:23:34.529开始   WebHISPortaalBLL.GeneralPractitioner.Create 24-11-2011 15:23:34.530   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create 24-11-2011   15:23:34.530 BEGIN WebHISPortaalBLL.GeneralPractitioner.Create   24-11-2011 15:23:34.531开始   WebHISPortaalBLL.GeneralPractitioner.Create 24-11-2011 15:23:34.531   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create

客户端服务器上的相同方法:

  

25-11-2011 10:38:11.414开始   WebHISPortaalBLL.GeneralPractitioner.Create 25-11-2011 10:38:11.476   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create 25-11-2011   10:38:11.539 BEGIN WebHISPortaalBLL.GeneralPractitioner.Create   25-11-2011 10:38:11.601开始   WebHISPortaalBLL.GeneralPractitioner.Create 25-11-2011 10:38:11.664   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create 25-11-2011   10:38:11.726 BEGIN WebHISPortaalBLL.GeneralPractitioner.Create   25-11-2011 10:38:11.789开始   WebHISPortaalBLL.GeneralPractitioner.Create 25-11-2011 10:38:11.851   BEGIN WebHISPortaalBLL.GeneralPractitioner.Create

我们的测试服务器平均需要1毫秒(实际上是0.5毫秒)才能完成此任务,客户端的服务器平均需要62毫秒才能完成此任务!

为什么?

那里有没有人可以帮助我们?我们将不胜感激。任何东西。

0 个答案:

没有答案