На протяжении долгого времени, исторически, 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