Spring Cloud ---- 服务消费与负载均衡(feign)

Posted zmerecord

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Cloud ---- 服务消费与负载均衡(feign)相关的知识,希望对你有一定的参考价值。

  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)的主要内容,如果未能解决你的问题,请参考以下文章

构建微服务架构Spring Cloud:服务消费(Ribbon)

Spring Cloud构建微服务架构服务消费者

Spring Cloud构建微服务架构服务消费者

Spring Cloud Spring Boot mybatis 企业分布式微服务云服务消费(Ribbon)Dalston版

spring cloud --- Ribbon 客户端负载均衡 + RestTemplate ---心得无熔断器

spring cloud --- Ribbon 客户端负载均衡 + RestTemplate ---心得无熔断器