如何使用Spring Cloud实际将REST服务绑定在一起?我觉得我错过了一些明显的东西。例如,假设我有两个独立的微服务,它们都被设置为在Spring Cloud和Spring Boot中运行。如何将它们绑定在一起,使第一个服务调用第二个服务?
我的理解是Eureka可以用作服务注册中心。如果我们要使用Eureka,那么让一个服务调用另一个服务的代码会是什么样子?
您可以使用Spring Cloud Netflix,它具有出色的服务发现(Eureka),断路器(Hystrix),智能路由(Zuul)和客户端负载平衡(Ribbon)模式,将适用于大规模分布式系统,特别是建立在微服务上。
同时,参考他们的优秀文档资源。
我认为其他答案是正确的,但这里有一些更具体的。
当您使用Spring Cloud Netflix创建Eureka服务器和客户端时,您可以使用EurekaClient
bean来获取客户端的主页URL。然后,您可以使用RestClient
来调用该客户端的api。
你可以有一个API网关,在其中你可以使用FeignClient从微服务调用服务。例如微服务A和微服务B。在网关中有两个微服务的虚拟客户端。在Gateway中编写一个服务,它将调用a中的服务和B中的服务
另一个工作是你可以在微服务a和微服务B中有一个ResourceProcessor和FeignClient。从A的资源处理器调用微服务B的服务