Назад | Перейти на главную страницу

Баланс нагрузки https и веб-сокетов с липкими сессиями и NGINX

Я использую NGINX для балансировки нагрузки липкого сеанса перед приложением node.js, которое будет поддерживать http, ssl и websockets. Если я хочу, чтобы балансировщик нагрузки просто перенаправлял запросы на сервер node.js и всегда имел сервер node.js обрабатывать любое завершение SSL, все же можно будет использовать закрепленные сеансы на основе файлов cookie или IP-адреса? Или мне нужно будет выполнить завершение SSL на уровне балансировщика нагрузки?

Если мне нужно выполнить завершение SSL в L.B. уровень, тогда мне нужно повторно зашифровать запрос перед отправкой запроса на сервер node.js?

Если вы хотите, чтобы сервер обрабатывал завершение SSL, вы можете использовать:

  • SSL-ID для балансировки нагрузки, но имеет указанные ограничения. Вот
  • клиентский IP, но имеет влияние, например. большие прокси

Если вы хотите обойти эти проблемы, вы можете завершить сеанс SSL на LB и использовать файлы cookie для закрепления. Если в приложении отсутствуют некоторые ограничения (например, жестко заданные ссылки), повторное шифрование не требуется.