发布后的ASP.NET MVC页面非常慢

时间:2018-10-04 10:16:27

标签: c# asp.net .net asp.net-mvc

我有一个ASP.NET MVC网站和非常简单的页面,但是发布该应用程序后,这些页面第一次运行非常缓慢。对于后续刷新,它们都可以正常工作。

重要的是要注意,这只是花费时间的第一页。但是,每个页面都需要花费一些时间来进行第一个请求。

这是我的发布个人资料XML内容:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <PrecompileBeforePublish>True</PrecompileBeforePublish>
    <EnableUpdateable>True</EnableUpdateable>
    <DebugSymbols>False</DebugSymbols>
    <WDPMergeOption>DonotMerge</WDPMergeOption>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>D:\demo-projects\published\Coupon</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
  </PropertyGroup>
  <Target Name="CustomAction" AfterTargets="CopyAllFilesToSingleFolderForPackage">
    <Message Text="Minifying files....." />
    <Exec Command="D:\Projects\html-minifier-master\Tool\htmlminifier.exe $(_PackageTempDir)" IgnoreExitCode="true" />
  </Target>
</Project>

有什么可以改善的地方吗?

3 个答案:

答案 0 :(得分:6)

这是发布的任何网站的正常行为。发布时,文件将更新,并且需要将这些文件加载​​到IIS会话中,并且将保持加载状态,直到后续更新或应用程序池刷新为止。

没有什么要担心的,您也无法在发布个人资料中解决。

答案 1 :(得分:2)

许多因素使您的网站无法正常运行。您可能需要检查内部和外部因素。如果使用托管服务提供商托管,则可以检查服务器是否过载。您可能需要检查服务器规格。

对于内部因素,您需要检查的东西很少

  • 您的代码效果如何
  • 您的SQL查询的有效性
  • 代码和SQL之间的有效性
  • 您是否优化了图片和其他图片

您还可以阅读诸如http://dotnet4hosting.asphostportal.com/post/ASPNET-Hosting-ASPHostPortalcom-Improve-Performance-of-an-ASPNET-Website.aspx之类的一些教程。

祝你好运!

答案 2 :(得分:1)

这不是问题,这是加载缓慢的可能原因:

  1. 对于第一个请求,所有物理文件都是首次下载。
  2. 缓存正在处理中,以进一步增强请求。
  3. 正在加载图像,以便下次频繁刷新页面。

您可以进行以下更改以增强增强效果:

  1. 缩小图像的大小。
  2. 捆绑 JavaScript和CSS内容。