несколько микросервисов, есть "большой" бакенд (в нескольких экземплярах)
всё это стыкуется с Eureka server и между ними неплохо идёт client-side load balancing
Но! Есть клиентские приложения, которые не умеют в client-side, хочется воткнуть между бакендом и клиентами балансировщик.
Zuul - не хочет работать, Spring вывел его в режим maintenance и любой запрос к последним его версиям на SpringBoot 2.7.0 падает с ошибкой 500
Spring Gateway - куча всяких настроек, фильтров... ничего непонятно, в том числе - стыкуется ли он (и как) с Eureka server
нет ли смысла вынести балансировщик отдельным продуктом тот же ngix понастраивать?
может и есть, впервые столкнулся с (пока ещё не необходимостью, а только желанием) такого. Вообще, хотелось бы как с @FeignClient - "вот такие запросы адресуй вот такому приложению, а где оно находится - разберись самостоятельно"
Для клиент-сервер nginx очень даже ничего
Там не только Zuul, но и сама Eureka устаревшая
Да. Но она (снаружи) простая как 5 копеек. И как минимум пока - работает. А все видимые мной примеры про Spring Cloud load balancer опираются на впрямую указанный список инстансов серверов.
Ну с впрямую указыванием так себе конечно. Не понял про «снаружи простая» , снаружи они все просты, в этом ж их суть, просто запускается еврика с автоконфигом что удобно
Насчет прямого указывания - т.е. я не ошибаюсь, автообновления как у Эврики пока у SpringCloud load balancer нету? А про "снаружи простая" - это как раз про использование и писал, Plug-and-play в действии. Что там под капотом творится - я даже представить не могу, но для потребителя (меня) всё решается 1-2 строчками, и это очень круто.
по Вашей ссылке - тоже впрямую указываются адреса серверов. Хотя... для бэка, скорее всего, это приемлимо - не будут же его пачками запускать... будет экземпляра 2-3 максимум, можно и прямые адреса серверов указать. Спасибо, ушел курить мануалы :)
А какие аналоги? Кубер и весь спринг клауд в помойку?
Микросервисы не обязывают привязываться к стеку как раз, я у себя consul + krakend связку делал, у спринга свой гейт есть тоже
Ну у меня на пет проекте сейчас eureka+spring cloud gateway. Думал eureka делает примерно то же что и consul, если не углубляться. Получается стоит использовать консул для service discovery?
Обсуждают сегодня