На протяжении долгого времени, исторически, Java-разработчики пользовались стеком Spring Cloud для микросервисов.
В 2017-19, когда я работал в одном банке, мы использовали следующие части стека Spring Cloud:
* Spring Cloud Consul для Service Discovery
* Spring Cloud (Open)Feign для декларативных клиентов
* Spring Cloud Sleuth для трассировки.
У нас тогда изначально не было Kubernetes(k8s), и, как следствие его DNS-based service discovery, поэтому мы использовали Consul и Spring Cloud Consul, интегрированный с Spring Cloud (Open)Feign. Все помнят ворнинги в логах от Netflix/archaius, который шёл в довесок ?)
Прошло время, от Spring Cloud отпилили Netflix/archaius.
Затем все стали пользоваться Kubernetes, и необходимость в поддержке разработкой собственного Service Discovery(Consul, Eureka) ушла благодаря DNS-based service discovery от Kubernetes.
Затем трассировка из Spring Cloud Sleuth плавно перетекла в Micrometer Tracing (см. также тут).
Затем в Spring Framework добавили декларативные Rest-клиенты (@GetExchange, @PostExchange, ...
), и недавно - поддержку этих аннотаций в контроллерах.
Недавно Spring Cloud OpenFeign перевели в maintenance mode.
Как мы видим, необходимость в этих трёх проектах стека Spring Cloud отпала.
---
SEO: недостатки Spring Cloud, Spring Cloud устарел, Spring Cloud потерял актуальность, Netflix Ribbon, Netflix Hystrix