Кэширование статического контента для ускорения работы страниц IIS

asp.net asp.net-mvc-4 caching iis iis-8

216 просмотра

1 ответ

Мое приложение находится в mvc4. Когда я отрисовываю страницу, это занимает слишком много времени. Я проверил на вкладке сети, что она занимает слишком много времени для рендеринга .jsфайлов.

Может ли кто-нибудь подсказать мне, как сделать кеш для статической папки в iis 8.5 или что я могу сделать в web.config, после этого я увеличу производительность своего веб-сайта и его страниц.


Рендеринг страницы занимает 10-20 секунд. Вот изображение времени.

Все jsфайлы находятся в папке скриптов, есть ли какой-нибудь способ кэшировать всю папку? введите описание изображения здесь

Автор: Ammar Источник Размещён: 08.11.2019 11:13

Ответы (1)


0 плюса

Вы можете улучшить время загрузки запроса, используя пакетирование.

Добавьте свой класс пакета в App_Startпапку, и все Jsфайлы, как показано ниже.

 public class BundleConfig
    {
        public static void RegisterBundles(BundleCollection bundles)
        {

            bundles.Add(new StyleBundle("~/Content/trans/css").Include(
              "~/Content/bootstrap_min.css",
              "~/Content/Theme/Css/style.css",
            ));
            bundles.Add(new JsBundle("~/Content/themes/base/css").Include(
                    "~/Content/themes/base/jquery.ui.core.js",
                    "~/Content/themes/base/jquery.ui.resizable.js",
                    "~/Content/themes/base/jquery.ui.selectable.js",
                    "~/Content/themes/base/jquery.ui.accordion.js",
                    "~/Content/themes/base/jquery.ui.autocomplete.js",
                    "~/Content/themes/base/jquery.ui.button.js",
                    "~/Content/themes/base/jquery.ui.dialog.js",
                    "~/Content/themes/base/jquery.ui.slider.js",
                    "~/Content/themes/base/jquery.ui.tabs.js",
                    "~/Content/themes/base/jquery.ui.datepicker.js",
                    "~/Content/themes/base/jquery.ui.progressbar.js",
                    "~/Content/themes/base/jquery.ui.theme.js"));
    }

   }
} 

Зарегистрируйте свой пакет в Global.asaxфайл.

BundleConfig.RegisterBundles(BundleTable.Bundles);

И используйте этот пакет JS на странице просмотра ( _Layout.cshtml)

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

Таким же образом вы можете также связывать CSSфайлы.

Надеюсь, что это поможет вам!

Автор: Div Размещён: 20.08.2016 01:36
Вопросы из категории :
32x32