Как уменьшить время загрузки страницы в приложении ASP.NET?

Как уменьшить время загрузки страницы в приложении ASP.NET? Что должно быть мерами предосторожности и особенно когда мы взаимодействуем с базами данных

например.

  1. мудрое использование состояния отображения
  2. Набор в web.config при развертывании приложения

    и т.д.

8
задан Azhar 1 October 2012 в 08:29
поделиться

9 ответов

Некоторые из ключевых «выводов» из TechEd 2010 North America:

  • Кэширование является ключом к производительности, очень тщательно рассмотрите свою стратегию кэширования.
  • По возможности отключите состояние просмотра.
  • Задайте в файле web.config при развертывании приложения.
  • Рассмотрим CDN или поддомены для графики и другого статического контента.
  • Поместите javascript внизу страницы, CSS вверху.
  • Рассмотрим СПРАЙТы CSS для иконок и другой «маленькой» графики.

Вы можете посмотреть сеансы онлайн здесь, они оба настоятельно рекомендуются:

9
ответ дан 5 December 2019 в 08:50
поделиться

Самая важная вещь перед выполнением любой работы по оптимизации - это указать, что необходимо оптимизировать.Здесь можно опубликовать тысячи советов по оптимизации, так что лучше выяснить, в чем заключается ваша проблема с производительностью, и задать более конкретный вопрос, чтобы помочь оптимизировать то, что вам нужно. Вы можете оптимизировать 3 части веб-приложения:

Производительность на стороне сервера: укажите самое узкое место (профилировщик - простой вариант для этого). Оптимизируйте узкое место. Оптимизация более мелких проблем или оптимизация без измерения количества времени может быть пустой тратой времени, когда большая проблема все еще существует.

Производительность на стороне клиента: посоветуйтесь с такими инструментами, как yslow или скорость страницы Google.

Пропускная способность: отправьте пользователю наименьшее количество данных, насколько это возможно, при наименьшем количестве запросов.

1
ответ дан 5 December 2019 в 08:50
поделиться
  • Кэшировать как можно больше чтения db
  • уменьшить / отключить состояние просмотра
  • сделать меньше (если возможно)
0
ответ дан 5 December 2019 в 08:50
поделиться

Вы всегда можете запустить асинхронное действие базы данных и обновить страницу асинхронно - на ум приходит панель обновления AJAX.

Существует также кэширование вывода страницы, полезное, если страница в основном статична. Оно также может быть сделано на основе параметров, так что вы можете потенциально кэшировать страницу, созданную для заданного поиска в базе данных.

Вы также можете использовать подход, основанный на переборчивости, и уменьшить "многословность" страницы. Однажды я сделал это ради забавы на странице товаров, сократив названия элементов и т.д., удалось сократить более 50% размера страницы, но это сделало разметку совершенно нечитабельной lol

По этому же пути примените инструменты сокращения к файлам css/javascript - объедините их тоже, если вы сжимаете, так как сжатие становится более эффективным при меньшем количестве больших файлов.

1
ответ дан 5 December 2019 в 08:50
поделиться

На MSDN есть интересная статья с 10 советами по оптимизации приложений ASP.Net. Its at

http://msdn.microsoft.com/en-us/magazine/cc163854.aspx

0
ответ дан 5 December 2019 в 08:50
поделиться
  • Постарайтесь как можно больше свести к минимуму ViewState или сохранить его на сервере
  • Используйте кеширование данных или частей на своей странице, используя кэширование вывода пользовательских элементов управления
  • Объединяйте сценарии и CSS как можно больше

Всегда измеряйте после того, как вы что-то реорганизовали, чтобы увидеть, имеет ли это значение.

Также, пожалуйста, посмотрите здесь дополнительную информацию .

Grz, Kris.

2
ответ дан 5 December 2019 в 08:50
поделиться

80% времени отклика конечного пользователя тратится на фронт-энд. Большая часть этого времени связана с загрузкой всех компонентов страницы: изображений, таблиц стилей, скриптов, Flash и т.д.

http://developer.yahoo.com/performance/rules.html

Я не предлагаю игнорировать предложения о состоянии представления и кэшировании базы данных в уже представленных ответах. Я указываю на то, что для более простых изменений, по моему мнению, нужно включить GZip-сжатие в IIS, установить заголовки истечения срока действия для статических элементов, чтобы уменьшить количество запросов к серверу, оптимизировать изображения с помощью такого инструмента, как smush.it

Запустите отчет о вашем сайте с помощью Zoompf для очень подробного отчета с оценкой влияния и рейтингом простоты реализации.

3
ответ дан 5 December 2019 в 08:50
поделиться
  • Используйте MS Visual Studio 2010, который помогает вы оптимизируете свой .NET-код для лучшая производительность.
  • CSS-спрайты очень полезны, когда вы иметь много изображений в фоновом режиме.
  • Сжать содержимое JavaScript файлы с использованием gZip compresser и CSS файл, удалив пробелы и Комментарии.
  • Избегайте комментариев HTML как таковых виден клиенту с помощью кнопки "Просмотр" Источник »в браузере, который также уменьшит размер файла.
  • Положите больше всего ненужного JavaScript внизу страницы. Для повышения производительности динамически загрузить ссылки JavaScript после загрузка содержимого на вашу страницу.
0
ответ дан 5 December 2019 в 08:50
поделиться
  1. Никогда не развертывайте приложение asp.net с конфигурацией отладки в производственной среде. Узнайте здесь , что Скоттгу говорит по этому поводу.

  2. Используйте домены без файлов cookie для обслуживания статических ресурсов, таких как изображения, сценарии, стили и т. Д. Каждый клиентский запрос отправляется вместе с целым набором файлов cookie, вам не нужны файлы cookie при обслуживании изображений или сценариев. Поэтому разместите эти ресурсы в домене без файлов cookie.

  3. Минимизируйте сценарии, таблицы стилей и HTML-ответ с сервера. Удаление ненужных разрывов строк и пробелов может улучшить время загрузки и оптимизацию полосы пропускания.

Вы найдете множество советов от здесь .

3
ответ дан 5 December 2019 в 08:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: