У меня вопрос о том, как загрузить балансировочные сокеты.
У меня есть сервер, который поддерживает сетевые сокеты. Браузеры подключаются к моему сайту, и каждый открывает веб-сокет на www.mydomain.com
. Таким образом, мое приложение в социальной сети может отправлять сообщения клиентам.
Традиционно, используя только HTTP-запросы, я бы увеличил добавление второго сервера и балансировки нагрузки перед двумя веб-серверами.
С веб-сокетами соединение должно быть напрямую с веб-сервером, а не с балансировщиками нагрузки, потому что, если у машины есть физический предел, скажем, 64k открытых портов, и клиенты подключаются к балансировщику нагрузки, тогда я мог бы 't поддерживает более 64 тыс. одновременных пользователей.
Итак, как я -
-
заставить клиента подключаться непосредственно к веб-серверу (а не к балансировщику нагрузки) при загрузке страницы? Я просто загружаю JavaScript из node, а балансировки нагрузки (или что-то другое) случайным образом изменяет URL-адрес для script, каждый раз, когда страница изначально запрашивается?
-
обрабатывать старт пульсации? Браузер заметит, что соединение закрывается, когда веб-сервер отключается. Я могу написать код JavaScript, чтобы попытаться повторно открыть соединение, но node исчезнет некоторое время. Поэтому, я думаю, мне нужно будет вернуться к балансировщику нагрузки, чтобы запросить адрес следующего node для использования?
-
Я действительно задавался вопросом о балансировщиках нагрузки, отправляющих перенаправление по первоначальному запросу, так что браузер первоначально запрашивает
www.mydomain.com
и перенаправляется наwww34.mydomain.com
. Это работает очень хорошо, пока не будет node, и сайты, подобные Facebook, этого не делают. Как они это делают?