У меня есть несколько веб-сайтов ASP.NET MVC в окне Windows 2003, на котором работает IIS6.
Повлияет ли включение сжатия IIS6 на производительность?
Спасибо
Павел
Статическое сжатие выполняется однократно, а затем сохраняется в кэше для использования в будущем. Так что это редко бывает проблемой.
Но поскольку у вас есть сайт MVC, вам также придется использовать динамическое сжатие. Это требует загрузки процессора при каждом запросе, хотя обычно это стоит затрат. В большинстве случаев на вашем клиенте есть лишние циклы ЦП, но ограниченная пропускная способность. Так что чаще всего сжатие - хорошая идея. Но если сервер проводит большую часть своего времени при определенной высокой нагрузке, то зависит он от того, помогает он или нет.
Вы можете настроить уровень сжатия в соответствии со своими потребностями, что рекомендуется, поскольку каждый общий сценарий использования зависит от сайта, сервера и полосы пропускания. Видеть Сжатие IIS в IIS6.0 или Сжатие IIS 7. Хорошо? Плохой? Сколько? (технически это касается IIS7, но обсуждение ограничений более обстоятельно).
(Я забываю, делает ли это IIS6, но имейте в виду, что IIS7 отключит динамическое сжатие, когда сервер достигнет определенной нагрузки, и не включит его, пока он не упадет до гораздо более низкой нагрузки. Я не могу найти ссылку для эта информация прямо сейчас - так что не воспринимайте это как евангелие.)
Я бы сказал, что в 99% случаев включение сжатия - это хорошо. Но, как и в случае любой настройки производительности, убедитесь, что вы тестируете и настраиваете в соответствии с вашими потребностями.
Если вы доставляете / загружаете большие объемы текстовых данных в приложение, разработчику очень легко включить Gzip / Deflate в коде, и это работает независимо от IIS. В этом случае он может быть уже включен, но вы можете не знать об этом.
Вот соответствующий отрывок из книги Стивена Сандерсона Pro ASP.Net MVC:
"Не забывайте, что HTTP-сжатие действительно полезно только для текстовых данных. Двоичные данные, такие как графика, обычно уже сжаты. Вы не получите выгоды, обертывая сжатие gzip вокруг существующего сжатия JPEG; вы просто сжигаете циклы ЦП даром.
"Примечание. В IIS 6 и более поздних версиях можно настроить сжатие HTTP-ответов либо для статического содержимого (т. Е. Файлов, обслуживаемых непосредственно с диска), либо для динамического содержимого (например, вывода из вашего приложения ASP.NET MVC). К сожалению, это довольно сложно настроить (в IIS 6 вы должны редактировать метабазу напрямую, что может быть недоступно в некоторых сценариях развертывания), и, конечно же, это не дает вам возможности включать или отключать ее для отдельных методов действий ».