Нужен пошаговый обзор для сжатия на Tomcat

Нужен пошаговый обзор сжатия на Tomcat 7 ... Я занимался этим несколько дней. В частности, интересует сжатие text/xml в ответ на сервлет, но также хотелось бы протестировать другие методы сжатия.

Из моего поиска в Google и чтения кажется, что мне нужно всего лишь добавить несколько строк для настройки http-коннектора в server.xml (см. ниже). Но я проверяю такие сайты, как webpagetest.org, и не вижу никаких результатов (даже gzip в заголовке ответа). Что еще мне нужно? Фильтры? Использование методов GZip в моем приложении? Указание сервлетов для сжатия вывода в web.xml? Я буду более чем счастлив, если продолжу уточнять детали, и был бы счастлив прямо сейчас быть уверенным, что знаю все необходимые детали.

    <Connector port="80" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="8443" 
          compression="on" 
          compressionMinSize="2048" 
          noCompressionUserAgents="gozilla, traviata" 
          compressableMimeType="text/html,text/xml,application/xml,text/javascript,text/css" />

ОБНОВИТЬ. РЕШЕНО... см. комментарии под принятым ответом ниже.


person Roger F. Gay    schedule 22.05.2013    source источник


Ответы (1)


Вы перезапустили Tomcat после редактирования файла server.xml? Вы проверили журналы (logs/catalina.out), чтобы увидеть, есть ли какие-либо ошибки при запуске сервера? (т.е. опечатка в конфигурационных файлах)

compression="on"

должно сработать.

Возможно, webpagetest.org не поддерживает сжатие gzip. Почему вы не используете инструменты разработчика Chrome (F12, вы можете видеть заголовки на вкладке «Сеть»)? или веб-консоль Firefox (Ctrl+Shift+K)?

person Eric Citaire    schedule 22.05.2013
comment
Да, я перезапустил. Хорошие инструменты. Найдены заголовки, щелкающие элемент GET на вкладке «Сеть» в Firefox. Тоже не показывает компрессию. - person Roger F. Gay; 22.05.2013
comment
Вы пытались отключить useSendfile, как это предлагается в документации. ? - person Eric Citaire; 22.05.2013
comment
Новость для меня. Конфигурация коннектора показана выше, в моем исходном посте. Если я правильно понимаю документ, то у меня нет useSendfile (если только это не скрытое значение по умолчанию). И ... ну, я также предполагаю из документа (это не учебник, но я уверен, что он будет полезен, когда я пойму, что я делаю) эффект не в том, чтобы отменить сжатие = вкл, так что это должно все еще отображаться в заголовке ответа. - person Roger F. Gay; 22.05.2013
comment
Согласно документации, он может иметь приоритет над сжатием и, кажется, активирован по умолчанию. Возможно, это не решение, но попробовать стоит... - person Eric Citaire; 22.05.2013
comment
Да... Content-Encoding:gzip в ответе после установки useSendfile=false.... xml из сервлета загружается быстро. Вся страница загружается очень быстро. Фантастическое улучшение. Спасибо, Эрик. - person Roger F. Gay; 24.05.2013
comment
Замечу из документации, что аналогичных результатов можно добиться, установив минимальный размер файла. Могу попробовать это позже, чтобы заполнить мои знания, если ничего другого. Тем не менее, вполне доволен результатами, которые я получаю сейчас. - person Roger F. Gay; 24.05.2013