ASP.NET Core 高 TTFB超过 5 秒首次访问该站点

问题描述

我使用 ASP Core 3.1 完成了一个网站。我通过 Plesk 面板将此网站上传到主机。当我在不同来源控制网站速度时,我看到网站的TTFB非常糟糕,超过5秒,

但这仅对第一次进入网站有效。我问这个问题我的网络托管公司。他们说它来自 API 或外部文件,但我无法理解。

Google PageSpeed Insights

enter image description here

解决方法

这是我的观察。

  1. 当您在一段时间内不访问站点时,它将成为理想的选择,大多数托管服务提供商(共享托管)卸载该站点和应用程序池。

  2. 下次有任何请求时,再次加载应用程序需要一些时间。如果您上传应用程序的新版本,也会发生这种情况。

在 IIS 以下配置。 (高级设置)

  1. 预加载已启用(站点级别)
  2. 启动模式(应用程序池级别)
  3. 理想超时(应用程序池级别)

如果您选择 Azure Web App,则在常规设置中会有一个配置,例如始终开启。

现在来到您的应用程序,就像您在来自外部服务器的第一次请求时加载任何数据一样。如果是这样,延迟也会导致此类问题。