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

HAProxy с использованием параметров URL для выбора сервера

У нас есть клиент мобильной игры, работающий на соединениях через веб-сокеты, и мы хотим использовать HAProxy в качестве балансировщика нагрузки. Есть два основных условия:

  1. Установите закрепленный сеанс на основе идентификатора параметра URL (переменная строка от 32 до 64 символов), а затем выберите сервер на основе наименьшего количества подключений
  2. Если параметр ID отсутствует, выберите первый сервер или сервер по умолчанию.

Вот пример конфигурации для обработки первого условия:

backend app
balance     leastconn
stick-table type string len 64 size 5M expire 30m
stick store-request url_param(ID) table app
stick on url_param(ID) table app
server  app1 127.0.0.1:5001 check
server  app2 127.0.0.1:5002 check

Проблема в том, что липкий сеанс не работает должным образом и не подключается к последнему подключенному серверу. Можете ли вы дать какие-либо предложения по его улучшению и в идеале удовлетворить второму условию?

Мы используем HAProxy версии 1.8.17, поставляемую с CentOS SCL.

Заранее спасибо.