On Thu, Jul 23, 2020 at 08:22:34PM +0300, Maxim Dounin wrote: > Hello! > > On Thu, Jul 23, 2020 at 07:09:41PM +0300, Slawa Olhovchenkov wrote: > > > On Thu, Jul 23, 2020 at 06:54:16PM +0300, Maxim Dounin wrote: > > > > > Hello! > > > > > > On Thu, Jul 23, 2020 at 06:27:49PM +0300, Slawa Olhovchenkov wrote: > > > > > > > В nginx 1.19.1 трафик который он считает отданным клиенту примерно в > > > > два раза больше того что учитывается сетевым оборудованием. > > > > > > > > В чем может быть дело? Куда копать? > > > > > > Что значит "трафик который он считает отданным клиенту"? Речь про > > > сумму значений переменных $bytes_sent? Эта переменная отражает > > > количество байт, отправелнных клиенту, то есть записанных в буфер > > > сокета. Что дальше с этими байтами происходило - nginx'у > > > незвестно, если клиент их получать на уровне TCP не стал и закрыл > > > соединение - то значение $bytes_sent может быть больше, чем ушло > > > через интерфейс, на размер буфера сокета. Дальше уже вопрос к > > > типичным размерам ответов, размерам буферов и поведению клиентов. > > > > это все понятно и очевидно, но два раза -- это два раза. > > типичный размер ответа -- 400кб, клиенты сокет до получения ответа > > закрывать не должны. > > Ну вот столь же очевидное место практической проверки - > предположение про "не должны". Если действительно не закрывают - > есть повод для разбирательства, а если таки закрывают - то > наблюдаемый эффект хорошо объясняется поведением клиентов. > > При таких размерах ответ скорее всего целиком влезает в буфер > сокета, и два раза - это примерно каждый второй ответ остался > неотправленным. Должно быть хорошо видно, если сличать глазами > логи и пакеты к соответствующим клиентам из дампа траффика.
Всё-таки это клиенты. Они закрывают сокет иной раз после отправки им 50кб ответа (из 256кб буфера). _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru