У нас есть несколько веб-серверов (в основном приложение с весенней загрузкой) и используем HAProxy перед этими серверами для балансировки нагрузки. Поскольку мы не используем репликацию сеанса HTTP, мы хотим, чтобы запрос от одного и того же пользователя всегда обслуживался одним и тем же серверным приложением. Хотя в большинстве случаев эта настройка работает, но иногда кажется, что запрос от одного и того же пользователя обслуживается с другого сервера. Я не уверен, правильная ли конфигурация. Вот соответствующий раздел из нашего haproxy.cfg
backend nodes
mode http
balance source
hash-type consistent
option forwardfor
option httpchk HEAD / HTTP/1.1\r\nHost:localhost
cookie serverId insert indirect nocache
server webapp1 xx.xx.xx.1:8099 maxconn 512 check cookie x1
server webapp1 xx.xx.xx.2.8099 maxconn 512 check cookie x2
Должно ли имя сервера быть таким же, как у значения cook ie. т.е. в моем случае вместо
server webapp1 xx.xx.xx.1:8099 maxconn 512 check cookie x1
server webapp2 xx.xx.xx.2:8099 maxconn 512 check cookie x2
Должен ли я изменить конфигурацию как
server webapp1 xx.xx.xx.1:8099 maxconn 512 check cookie webapp1
server webapp2 xx.xx.xx.2:8099 maxconn 512 check cookie webapp2
Оцените любую помощь.