Welcome! Log In Create A New Profile

Advanced

когда лучше использовать multi_accept on

VovansystemS
May 26, 2016 02:50PM
Добрый вечер,

подскажите пожалуйста, в каких случаях нужно включать multi_accept on
и как именно он работает?

документацию читал http://nginx.org/r/multi_accept/ru
из того, что мне удалось нагуглить, ничто не проясняет ситуацию для меня:

http://mailman.nginx.org/pipermail/nginx-ru/2009-October/028973.html :
При "multi_accept on" nginx пытается accept()нуть все соединения при
получении сообщения о новых соединениях

http://mailman.nginx.org/pipermail/nginx-ru/2015-May/056041.html :
С multi_accept не пересекается никак - в зависимости от workload'а
и желаемых результатов может иметь или не иметь смысл включать
multi_accept. Проблема всё та же: multi_accept позволяет принять
сразу несколько соединений за одну итерацию event loop'а, но ценой
одного лишнего вызова accept(). Есть небольшой положительный
эффект - при использовании reuseport из-за multi_accept'а не будут
возникать перекосы в распределении соединений между рабочими
процессами при microbenchmark'ах.

http://mailman.nginx.org/pipermail/nginx-ru/2014-June/054012.html :
По умолчанию nginx старается работать так, чтобы "пробуждалось"
минимальное количество рабочих процессов - это позволяет экономить
затраты на переключение контекстов и "лишние" пробуждения
процессов. При реальной работе - в результате используется
столько процессов, сколько на самом деле нужно для обработки той
нагрузки, которая есть.
Если хочется получить более ровное распределение в тестах - то
имеет смысл:
- accept_mutex выключить;
- multi_accept, если вдруг включён, выключить;
- убедиться, что тесты не используют постоянные соединения и/или
количество устанавливаемых соединений так или иначе велико.

Я не понимаю что мы выигрываем от принятия сразу нескольких
соединений за одну итерацию event loop'а.

Валентин, может быть Вы сможете проиллюстрировать ситуацию со
включенным и отключенным multi_accept на примере с бомжами и мусорными
баками?
https://habrahabr.ru/post/188114/#comment_6549442
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

когда лучше использовать multi_accept on

VovansystemS May 26, 2016 02:50PM

Re: когда лучше использовать multi_accept on

VovansystemS June 10, 2016 01:42AM

Re: когда лучше использовать multi_accept on

Yuriy Medvedev June 10, 2016 01:50AM

Re: когда лучше использовать multi_accept on

VovansystemS June 10, 2016 02:10AM

Re: когда лучше использовать multi_accept on

Yuriy Medvedev June 10, 2016 03:08AM

Re: когда лучше использовать multi_accept on

VovansystemS June 10, 2016 07:06AM

Re: когда лучше использовать multi_accept on

Валентин Бартенев June 10, 2016 09:00AM

Re: когда лучше использовать multi_accept on

VovansystemS June 10, 2016 10:18AM

Re: когда лучше использовать multi_accept on

Sargas June 10, 2016 11:54AM

Re: когда лучше использовать multi_accept on

Валентин Бартенев June 10, 2016 01:12PM

Re: когда лучше использовать multi_accept on

Sargas June 10, 2016 01:30PM

Re: когда лучше использовать multi_accept on

S.A.N June 10, 2016 10:10AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 196
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready