У меня три сервера. Один для балансировки нагрузки, два других для обслуживания веб-приложения. Моя балансировка нагрузки работает нормально, если я использую свою веб-страницу в качестве статического сайта. но когда я захожу на свою веб-страницу, она не отвечает правильно, потому что каждый раз, когда она меняет свой сервер при загрузке страницы. Как я могу сделать это без изменения текущего сервера перед выходом из системы. Моя конфигурация сервера балансировки нагрузки
upstream web_backend{
server 192.168.33.2;
server 192.168.33.3;
}
server{
listen 80;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://web_backend;
}
}
Ты можешь использовать Постоянство сеанса Особенность nginx:
Если есть необходимость привязать клиента к конкретному приложению
сервер — другими словами, сделать сеанс клиента «липким» или
«Постоянный» с точки зрения того, чтобы всегда пытаться выбрать определенный сервер —
можно использовать механизм балансировки нагрузки ip-hash.С ip-hash, IP-адрес клиента используется в качестве ключа хеширования
определить, какой сервер в группе серверов должен быть выбран для
запросы клиента. Этот метод гарантирует, что запросы от того же
клиент всегда будет направлен на один и тот же сервер, кроме случаев, когда это
Сервер недоступен.Чтобы настроить балансировку нагрузки ip-hash, просто добавьте директиву ip_hash в
конфигурация группы серверов (восходящего потока):
В вашем случае просто добавьте ip_hash
в вашем верхнем определении
upstream web_backend{
ip_hash;
server 192.168.33.2;
server 192.168.33.3;
}
Других решений пока нет …