Как заставить Apache mod_deflate и Transfer-encoding: Chunked работать вместе?

Я пытаюсь использовать концепцию bigpipe на нашем сайте. Это означает, что нужно пытаться отправить ответ кусками, а не отправлять его целиком, чтобы пользователь чувствовал, что страница работает быстро. Я успешен в этом, используя метод flushBuffer для объекта ответа в Java. Но теперь, когда я пытаюсь сжать содержимое с помощью модуля apache mod_deflate, фрагментация теряется.

Вот конфигурация от Apache, используемая для сжатия содержимого

**

Начать настройку mod_deflate
DeflateBufferSize 100
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
DeflateFilterNote Input input_info
DeflateFilterNote Output output_info
DeflateFilterNote Ratio ratio_info
LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate
CustomLog /var/log/httpd/deflate_log deflate
Конец конфигурации mod_deflate **

Вот заголовок ответа, когда в apache включен дефлат

Connection: Keep-Alive
Content-Encoding: GZIP
Content-Length: 7916
Content-Type: Текст / html; кодировка = UTF-8
Дата: пт, 27 января 2012 20:11:11 GMT
Keep-Alive: тайм-аут = 300, макс = 3997
Сервер: Apache
Vary: Accept-Encoding

Заголовок ответа при отключении дефлята в apache

Connection: Keep-Alive
Content-Type: Текст / html; кодировка = UTF-8
Дата: пт, 27 января 2012 20:21:14 GMT
Keep-Alive: тайм-аут = 300, макс = 3997
Сервер: Apache / 2.2.3 (CentOS)
Transfer-Encoding: фрагментированный

Как вы можете видеть выше, 2 заголовка работают только в том случае, если сжатие отключено. Я искал в Интернете об этом, и люди предлагали уменьшитьDeflateBufferSize стоимость. Я уменьшил значение до 100 байт, как вы можете видеть в моей конфигурации apache, но это все еще не решило проблему. Значение DeflateBufferSize, равное 100 байтам, означает, что ответ буферизуется в apache до получения 100 байт, а затем он сжимается.

Я смотрел на модуль mod_gzip, который был в комплекте со старым apache 1.3, и этот модуль имеет следующую директиву, которая позволяет разбивать содержимое на куски.

mod_gzip_dechunk Да

Кто-нибудь знает такую директиву в mod_deflate в комплекте с apache 2.x?

Или кто-нибудь знает, как сжать кусочный контент?

Ответы на вопрос(2)

Ваш ответ на вопрос