Как делает nginx websocket, проксируют работу?

Я задан вопросом о том, как nginx обрабатывает тонны активные websocket соединения? Существует много ограничений, как много открытых файлов, максимума 65k соединений TCP между IP <-> (IP, порт) и так далее.

Когда я использую nginx в качестве обратного прокси и имею, скажем, 5 узлов в восходящем потоке websocket, есть ли до 65k активных соединений TCP между nginx и каждым узлом? В случае, если, если у меня есть больше, чем 300k активные клиенты, обслуживаемые nginx, конечно. Или nginx websocket проксируют работы в другом отношении?

И мой другой вопрос: какие параметры (пределы) я должен настроить для обработки такого количества соединений?

2
задан 17 September 2015 в 22:54
1 ответ

Ваше понимание верно, но ваш реальный предел будет состоять в работе с файлами. Каждое соединение сокета требует наличия файловой ручки в Linux, а по умолчанию это 1024. /proc/sys/fs/file-max устанавливает лимит для всей системы. Вам нужно поднять эти лимиты, чтобы справиться с высокой скоростью соединений nginx.

Специалисты NGINX протестировали до 50,000 соединений на шестиядерном сервере:

https://www.nginx.com/blog/nginx-websockets-performance/

Реальность такова, что если вам нужны десятки тысяч соединений в реальном мире, вам нужно перейти к нескольким обратным прокси позади круглосуточного DNS. Вот, например, как работает Elastic Load Balancer от Amazon. Если вы ищете что-нибудь в AWS облаке, например Slack.com и набираете 'nslookup slack.com', вы получите длинный список IP-адресов. Введите его еще раз и вы получите другой список с IP-адресами, повернутыми так, чтобы другой находился во главе списка. Это обратные прокси Amazon AWS ELB () на круглосуточном DNS, которые перенаправляют запросы к реальным серверам приложений. Трудной частью на этом этапе становится управление регистрацией и дерегистрацией обратных прокси-серверов от DNS по мере их прихода и ухода, или управление поглощением IP-адресов, если это то, что вы собираетесь делать. Сложные проблемы, и поэтому я использую решение Amazon, а не сворачиваю свое собственное.

.
3
ответ дан 3 December 2019 в 10:42

Теги

Похожие вопросы