【发布时间】:2017-06-15 20:45:57
【问题描述】:
所以我正在迁移一台服务器,但不知道为什么新机器/环境比旧机器/环境慢。以下是事实。
旧机器 2008 R2 - 3.1ghz 四核 Xeon 带 12GB SQL2k\SQL 2008 IIS 7
新机器 2012 R2 - 2.5ghz 8 核 Opteron 带 16gb SQL2k\SQL 2008\SQL 2016 IIS 8.5
这就是我所做的。我将代码库迁移到新机器上。我加载了我知道不支持的 SQL2k,我计划升级。两台机器上的相同页面加载正常。旧机 10 秒加载新机 124 秒。
下一步是将数据库从 2k 通过 2008 转换为 2016。以相同的加载速度 124 秒完成。接下来将连接字符串从 OLEDB 更改为 Native 11。这将加载时间从 124 秒降至 30 秒。
接下来我进入查询管理器并在两台机器上运行 SP。老机器需要4秒才能完成查询。新机器在 sql2k 上运行相同的查询不到 2 秒,但在 sql2016 上,相同的查询在一秒钟内运行。然后我写了一个更密集的查询并在两台机器上运行它。旧机器执行需要 120 秒,2016 年新机器需要 12 秒,SQL2k 大约需要 25 秒。
所以此时我假设它是 IIS 设置。接下来,我去了安装 SQL 2016 的旧机器并加载它以测试速度,新数据库在具有 IIS 7 的旧服务器上运行。零差异。
我尝试过更改连接字符串,IP 与 NAME 没有区别。
IIS 8.5 中是否存在一些影响经典 ASP 性能的更改或 2012R2 中我在某处缺少的设置?两台机器上的所有应用程序池和站点都完全相同。
任何帮助都会很棒,谢谢
** 添加的所有 sql 设置对于 sql2k 和 sql2016 以及 IIS 设置也是相同的。防火墙设置也一样。 .NET 环境也一样。
** 新机改成 8 核而不是 4
【问题讨论】:
标签: iis-7 sql-server-2000 windows-server-2008-r2 windows-server-2012-r2 iis-8.5