Просьба к Redis в стиле REST через HAPROXY - PullRequest
0 голосов
/ 05 марта 2019

У меня есть небольшое веб-приложение с балансировщиком нагрузки haproxy.Есть два бэкэнда, один - apache, а второй - redis.Apache является бэкендом по умолчанию.Теперь я должен запросить Redis из веб-приложения, чтобы получить несколько строк.Какой самый лучший способ?Ниже приведена конфигурация

frontend  http_front
   bind *:80
   reqadd X-Forwarded-Proto:\ http

   acl redis_req path_beg     -i /redis
   use_backend redis           if redis_req

   default_backend             apache

log-format %ci:%cp_[%t]_%bi:%bp_%s_%{+Q}r_%ST_%Tq/%Tw/%Tc/%Tr/%Tt_%B


backend redis
   balance roundrobin
   server redisApp localhost:6379 check

backend apache
   balance roundrobin
   server redis.12 localhost:8080 check

Можно ли запросить redis, например http://127.0.0.1/redis/get/foo, через какое-то приложение REST./redis сообщит haproxy, что это запрос на повторный доступ.К сожалению, он не работает для Redis и наблюдаем следующую ошибку.

<html><body><h1>502 Bad Gateway</h1>
The server returned an invalid or incomplete response.
</body></html>

Запрос от клиента был таким curl -w '\n' machine-ip/redis/ping.Где я не прав?Есть ли лучший подход для этого случая?

...