本文主要介紹在SpringCloudAlibaba和Nacos微服務框架下,使用openfeign的FeignClient實現客戶端負載均衡的效果。關於服務提供者和服務消費者的程序請直接查閱這篇文章。基於SpringCloudAlibaba和Nacos構建微服務入門實例java
Feign is a Java to HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket. Feign's first goal was reducing the complexity of binding Denominator uniformly to HTTP APIs regardless of ReSTfulness.git
將基於SpringCloudAlibaba和Nacos構建微服務入門實例中的服務提供者程序打包輸出:myclouds-nacos-discovery-provider-example-3.0.0.jar。github
啓動2個服務提供者實例spring
java -jar myclouds-nacos-discovery-provider-example-3.0.0.jar --server.port=18000 java -jar myclouds-nacos-discovery-provider-example-3.0.0.jar --server.port=18001
將基於SpringCloudAlibaba和Nacos構建微服務入門實例中的服務提供者程序打包輸出:myclouds-nacos-discovery-consumer-example-3.0.0.jar。bash
java -jar myclouds-nacos-discovery-consumer-example-3.0.0.jar --server.port=18000
請求http://127.0.0.1:19000/bankcard/findCardInfo?cardNo=5301001,查看服務提供者控制檯。負載均衡
springcloudalibaba下feignclient的負載均衡實現也是依賴netflix-ribbon。在spring-cloud-starter-alibaba-nacos-discovery pom中對其進行了依賴spring-cloud-starter-netflix-ribbon。框架
完整實例代碼請訪問個人myclouds代碼倉庫。https://gitee.com/osworks/mycloudsless