1. 程式人生 > >Spring Cloud ---- 服務消費與負載均衡(feign)

Spring Cloud ---- 服務消費與負載均衡(feign)

req 啟動文件 創建 code cli 負載均衡。 auto request 文件

  feign是一個聲明式的偽客戶端,只需要創建一個接口並且註解,它具有可插拔的特性。feign集合了Ribbon,再與Eurake結合實現服務的註冊發現與負載均衡。結合Hystrix,具有熔斷功能。

  1.使用步驟首先引入feign,eureka, hystrix的jar包

  2.啟動兩次服務提供者

  3.配置文件聲明註冊中心地址,聲明端口號,服務名

eureka:
  client:
    serviceUrl:
        defaultZone: http://localhost:8761/eureka/

spring:
    application:
        name: service
-feign server: port: 8764

  4.在啟動文件上聲明@EnableFeignClient

  5.創建接口類

  

@FeignClient(value = "service-hi") //服務提供者的服務名稱
public interface SchedualServiceHi {
    @RequestMapping(value = "/hi",method = RequestMethod.GET)
    String sayHiFromClientOne(@RequestParam(value = "name") String name);
}

  6.在controller層暴露一個 /hi的接口出去,通過定義的FeignClien來消費服務

@RestController
public class HiController {
    @Autowired
    SchedualServiceHi schedualServiceHi;
    @GetMapping(value="/hi")
    public String sayHi(@RequestParam String name){
        return schedualServiceHi.sayHiFromClientOne(name);
    }
}

  7.啟動瀏覽器,發送請求 http://localhost:8765/hi?name=zhangsan,服務的提供者會交替被調用.

Spring Cloud ---- 服務消費與負載均衡(feign)