1. 程式人生 > >Spring Cloud 微服務實戰 第六章 宣告式服務呼叫:Spring Cloud Feign

Spring Cloud 微服務實戰 第六章 宣告式服務呼叫:Spring Cloud Feign

    本章介紹的是Spring Cloud Feign ,它是基於Netfix Feign 實現 ,整合了Spring Cloud Ribbon 與 Spring Cloud Hystrix,

除了提供這兩者的強大功能之外,還提供了一種宣告式的web服務客戶端定義方式。

    快速入門

   第一步:建立一個Spring Boot 基礎工程,取名為feign-consumer,並在pom.xml中引入spring-cloud-starter-eureka 和

   spring-cloud-starter-feign依賴。

    第二步:建立應用主類ConsumerApplication,並通過@EnableFeignClients 註解來開啟Spring Cloud Feign 的支援功能。

    第三步:定義HelloService介面,通過@FeignClient 註解指定服務名來繫結服務,然後再使用Spring MVC 的註解來繫結具體該服務提供的REST 介面。

    注意:這裡的服務名不區分大小寫,所以使用hello-service 和 HELLO-SERVICE 都是可以的。在Brixton.SR5版本中,原有的serviceId 屬性已經被廢棄,若要寫屬性名,可以使用name 或 value 。

    第四步:建立一個ConsumerController 來實現對Feign 客戶端的呼叫。使用@AutoWired直接注入上面定義的HelloService例項,並在helloConsumer函式中呼叫這個綁定了hello-service 服務介面的客戶端來向服務發起/hello介面的呼叫。

最後,需要在application.properties中指定服務註冊中心,並定義自身的服務名為feign-consumer