我们有一个C#
mvc
项目在多台电脑上运行良好。在一台电脑上,我遇到了一个奇怪的问题,起初我以为是编码问题,因此我问了一个问题堆栈溢出。但经过一些测试,似乎与编码无关。
该项目在 Windows 10 上的本地 IIS 上运行,有多个控制器(页面)。当我在同一台计算机上浏览主页(和其他几个页面)时,每次都需要大约 2 分钟才能收到第一个字节。该项目的其他页面运行速度很快。
我自然而然地认为这是因为这些页面上的代码,但调试显示所有页面(快速和慢速)都Application_PreSendRequestContent
在 100 毫秒内触发了最后一个事件()。之后它应该开始发送数据。
如果我通过网络从另一台计算机访问此网站,它就可以正常工作。即使同一台计算机仍在等待主页的第一个字节,另一台计算机也可以直接请求同一页面。
概述:
- PC 1:Windows 10/IIS
- PC 1:在 PC1 上请求主页:2 分钟到达第一个字节
- PC 1:在 PC1 上请求页面 X1:2 分钟到达第一个字节
- PC 1:在 PC1 上请求页面 X2:即时结果
PC 1:在 PC1 上请求页面 X3:即时结果
PC 1:请求主页并等待第一个字节
- PC 2:在 PC1 上请求主页:即时结果
- PC 3:在 PC1 上请求主页:即时结果
- PC 1:经过2分钟后终于收到主页。
我排除的是:
- 编码问题:到处都会很慢
- IIS 问题:到处都很慢
- 浏览器问题:发生在 Firefox、Chrome 和 Edge 中
- 解析问题:内容类型为 text/plain
- DNS 问题:通过 IP 地址访问有同样的问题
我不知道还能寻找什么。