Веб-приложение ASP: наилучшая практика в отношении среднего размера веб-страницы

Веб-приложение ASP: наилучшая практика в отношении среднего размера веб-страницы

Ребята, есть ли у вас какие-нибудь практические советы по выходному размеру веб-страниц? Чем меньше, тем лучше, конечно. Я говорю о некэшированном выходе. Я бы предпочел не возвращать страницы по 1 МБ.

решение1

Это зависит от вашей пользовательской базы и типа интернет-подключений. Для широкополосных подключений время рендеринга и количество объектов (и, следовательно, HTTP-запросов) скорее всего будут более узким местом, чем чистый объем данных, даже с keepalives. Пользователь с подключением 4 Мбит/с может загрузить 1 МБ данных за две секунды, но он вряд ли сможет загрузить 50 или 100 отдельных объектов и отобразить сложный JavaScript и CSS так быстро.

Если ваши пользователи используют более медленное соединение, то определите самую медленную скорость соединения, которую вам нужно поддерживать, и максимально приемлемое время загрузки страницы, и соответствующим образом задайте размер страниц. Но измеряйте и контролируйте время отображения страниц (я предлагаю смотреть на среднее значение, медиану и 90-й процентиль).

решение2

Если вы разделите свою страницу на несколько файлов (JavaScript, CSS, изображения и т. д.) с правильным использованием заголовков HTML (Expires: например), то средний объем, загружаемый пользователем, может быть намного меньше общего. Например, на моем сайте общий объем файлов за загрузку составляет 100-200 КБ, но средний объем, загружаемый за просмотр страницы, составляет всего 10-20% от этого.

Хороший общий размер страницы будет зависеть от типа вашего сайта и контента, который вы предоставляете. Для меня страница в 200 Кб большая, но для некоторых это огромная, а для других это может быть маленькая. Всегда полезно протестировать/сравнить время загрузки вашего сайта.FireBugДля этого удобно использовать расширение для FireFox.

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

решение3

Вы говорите об ASP или ASP.NET? Если это ASP.NET, помните о размере переменной/поля Viewstate, которая встраивается в страницу. Любые обратные отправки формы из браузера должны отправлять это скрытое поле с запросом, и если вы не будете осторожны с тем, как вы храните состояние на странице, оно может очень быстро стать очень большим. Вы не хотите, чтобы ваши пользователи загружали более 256 КБ каждый раз, когда они нажимают кнопку или элемент управления на странице.

Есть небольшое расширение для Firefox под названием Viewstate Size, которое помещает эту информацию в строку состояния.

Связанный контент