asp.net-mvc - MVC脚本捆绑优化导致服务器负载巨大

标签 asp.net-mvc bundling-and-minification

使用:

  • MVC 5.2.0.0
  • Microsoft.AspNet.Web.Optimization 1.1.3
  • Visual Studio 13
  • 撰写本文时的最新更新

我的主机服务正在重置我的应用程序池,因为我超出了限制。他们的限制是每次发布或获取 300 MB。这似乎已经足够了!发生什么了?我使用 Fiddler 发现捆绑让我很头疼。

如果我在布局中使用脚本加载:

    <script src="@Url.Content("~/Scripts/jquery-2.1.1.min.js")"></script>

等等,使用 Fiddler,我看到我的页面加载了大约 55K 的脚本,满足我运行所需的所有内容。

如果我使用:

    @Scripts.Render("~/bundles/jquery")

等等,Fiddler 报告仅 一个 包的负载为 7 MB,并且从那里开始快速走下坡路......

脚本的数据是一堆乱码,因此看起来优化是对捆绑的所有脚本进行加密。

我喜欢捆绑的易用性,但是有没有办法关闭这种“打包”?我想要通过捆绑来帮助将我的脚本组织成 block ,这样我就不需要在每个布局文件中复制太多内容。

编辑:

抱歉,300 MB 是应用程序池中的内存限制。这就是我所遇到的。

bundle 是标准票价的东西(我不是调用多个 bundle ,而是将其全部放入一个 bundle 中):

            bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-{version}.js",
                    "~/Scripts/jquery.validate*",
                    "~/Scripts/modernizr-*",
                    "~/Scripts/site.js",
                    "~/Scripts/bootstrap.js",
                    "~/Scripts/respond.js",
                    "~/Scripts/masonry.pkgd.min.js",
                    "~/Scripts/jquery.zoom.min.js",
                    "~/Scripts/AnimOnScroll.js",
                    "~/Scripts/classie.js",
                    "~/Scripts/imagesloaded.js",
                    "~/Scripts/util.js"));

另外 - 这不是我的服务器 - 它是一个托管服务:DiscountASP.net

再次编辑

抱歉,金额是 550K 与 7 MB

最佳答案

在 BundleConfig.cs 中使用以下代码来禁用缩小优化步骤:

BundleTable.EnableOptimizations = false;

相反,您将剩下的是 bundle 在合并之前收集的所有脚本的输出。

然后,如果由于“*”通配符脚本而捆绑了太多脚本或添加了重复脚本,您可以查看导致问题的原因。

关于asp.net-mvc - MVC脚本捆绑优化导致服务器负载巨大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25491704/

相关文章:

reactjs - 为什么 Metro Bunler 加载我的应用程序需要这么长时间?

c# - 捆绑 - 应用程序路径错误

c# - asp.net mvc开发者的Java框架推荐

asp.net-mvc - Azure SignalR 服务连接未激活

c# - 是否可以从 ASPX 文件的代码后面调用 Scripts.Render 或 Styles.Render?

javascript - 在 asp.net 中捆绑

asp.net-mvc - 查找 session 状态的所有使用

asp.net - 没有足够的存储空间来完成此操作 - Azure 应用服务、Nuget.Server

c# - 导出到 excel 在服务器上不起作用

c# - 有没有办法防止通过 asp.net System.Web.Optimization 重命名某些变量