Re: Проблемы с deflate ответами
Konstantin Tokarev
annulen at yandex.ru
Wed Feb 25 17:28:11 UTC 2015
25.02.2015, 14:16, "SerP" <serp256 at gmail.com>:
> Здравствуйте.
> Недавно столкнулись с проблемой, никак не можем понять в чем дело.
> Может быть у кого-нить возникнут мысли, куда можно еще посмотреть.
>
> Приложение - игра на flash. Делает запросы на nginx.
> nginx прокисрует их, на наш http демон, с игровой логикой.
> И вот недавно, где с 10го февраля, пользователи стали жаловаться на "ошибку 200" :-), это наше кодовое название проблемы.
> Суть в том, что флеш не дочитывает ответ до конца, браузер ему сообщает что "Stream error" и данные не полные, http статус 200.
> В access логе, мы видим, что ответ был отдан, но не до конца.
> Такие ошибки есть всегда - "плохой интернет". Но вот это стало возникать у большого кол-ва пользователей с "хорошим" интернетом.
> Мы выяснили, что когда мы отключаем в ngnix deflate (gzip off) ответов, то ситуация нормализуется.
> Данные в ответе наши бинарные. Content-type: application/octet-stream
> Настройки nginx:
>
> tcp_nodelay on;
> gzip on;
> gzip_comp_level 6;
> gzip_min_length 10K;
> gzip_types *;
> gzip_static on;
Ради инетереса стоит проверить, какой выигрыш дает gzip уровня 6 на типовом ответе сервера. Бинарные данные обычно сжимаются хуже, чем текст, и может оказаться, что выигрыш не оправдывает затрат на сжатие/распаковку.
--
Regards,
Konstantin
Подробная информация о списке рассылки nginx-ru