代码之家  ›  专栏  ›  技术社区  ›  empz

iis 7.5(windows7)下的asp.net网站运行非常缓慢

  •  14
  • empz  · 技术社区  · 16 年前

    我刚在我的台式电脑上安装了Windows7x64Ultimate。我安装了IIS、Visual Studio 2008、注册的ASP.NET等。

    我有一个asp.net 3.5网站,我在这个新的iis上运行得非常慢。在sta和prod服务器(windows 2003服务器)以及我以前的xp/iis 5.1上,一切运行都很顺利。

    一个页面通常需要1-2秒的加载时间是8秒!!!!

    我看见了 this post 在IIS论坛上。它说明了vista/7没有共享连接(只是让你知道,网站是在本地运行的,但是它连接到了一个远程服务器上托管的sql server 2005)。

    似乎需要一段时间才能“开始加载”页面…我是说,我单击刷新,它会停留几秒钟“等待本地主机”…然后当它得到响应时,它会正常加载整个页面…

    我不知道如何强制win7/iis7.5池数据库连接。

    编辑: 我已经创建了一个新的空的asp.net web应用程序来查看问题是否也发生了。答案是否定的,它以空的默认页面快速响应。可能与数据库连接有关。我会做进一步的测试。它应该是一种修复它的方法…

    编辑2: 调试应用程序时,我注意到延迟发生在.NET代码(页面加载等)执行之后。因此,当iis将页面提供给浏览器时,延迟似乎就在某个地方。

    4 回复  |  直到 12 年前
        1
  •  5
  •   Speck    13 年前

    对于那些有同样问题的人,这里有两个可能的解决方案。

    • 1)禁用Firefox中的IPv6支持(仅适用于Firefox)

    我发现的大多数作者都认为这种方法是最快速、最干净的解决方案。您需要做的基本上是在firefox中打开配置设置(about:config)并将network.dns.disableipv6设置更改为true。

    • 2)更改主机文件(所有浏览器)中的本地主机设置

    我想到这个是为了检查在哪里以及如何干扰我的机器上的ipv6设置。我在上面提到的源代码中看到一条评论,说只要在url中将localhost替换为machine name,就可以解决这个问题。

    我很快就检查了一下,发现禁用ipv6本地主机查找和直接在firefox中禁用ipv6是一样的。

    您需要做的基本上是在hosts文件中注释/删除这一行:

    #::1             localhost
    

    注意:::1表示法是IPv6等效于IPv4 127.0.0.1查找地址。

    我相信第二种解决方案可能更适合一般不想禁用ipv6的用户,而第一种解决方案更适合在日常工作中仍然不使用ipv6的所有其他用户。

        2
  •  3
  •   Marty McGee    14 年前

    我也遇到了同样的问题:在windows 7 64位上使用iis 7.5的站点性能极其缓慢,它有一个核心的2对4gb ram和3个只运行一个网站的应用程序池进程。我做了些什么让速度回到i i s,问题解决了…

    我的诀窍是按照Microsoft在iis.net上的指示,使用32位工作线程运行iis,您可以在此处阅读:

    http://learn.iis.net/page.aspx/201/32-bit-mode-worker-processes/

    提供了简单的解决方案(我不想在这里重写它)。可以从windows命令提示符运行一行命令,也可以从windows powershell运行一行命令。我只是从命令行运行它(确保以管理员身份打开命令行或powershell—右键单击“以管理员身份运行”)。

    谢谢, 马蒂麦基

        3
  •  1
  •   Russell    16 年前

    可以尝试将多个进程作为应用程序池运行:

    • 开放式IIS
    • 单击应用程序池
    • 右键单击应用程序池 然后单击高级设置
    • 找到 “最大工作进程数”和更新 IT到3(或进程数 你想允许运行)。
        4
  •  0
  •   Ciarán Bruen    12 年前

    我知道操作系统运行的是iis 7.5,这可能不适用于他,但我发布这个可能有助于其他人运行 IIS Express 8.0 . 我也遇到了同样的问题,ipv6或主机文件更改对我都不起作用。我的asp.net mvc4项目在点击f5刷新本地主机上的js更改后非常慢。所有浏览器——Chrome、FF和IE——都会出现这种情况。最终我发现iisexpress8.0在提供js文件时速度非常慢,似乎是个bug。如果我在命令行上运行iisexpress并点击f5,我可以看到每个js文件都需要4或5秒才能加载。

    最后,我卸载了iis 8.0并安装了iis express 7.5,问题立即得到了解决。以下是我遵循的步骤:

    IIS Express 8.0似乎与VS 2012一起安装,因此如果您有新的安装或可能有服务包更新,这可能会升级以前的IIS Express版本。