美文网首页
探索Finchley版Spring Cloud(声明式调用Fei

探索Finchley版Spring Cloud(声明式调用Fei

作者: 浅笑丨无痕 | 来源:发表于2018-05-20 01:14 被阅读0次

    Feign在RestTemplate的基础上对其封装,由它来帮助我们定义和实现依赖服务接口的定义。Spring Cloud Feign基于Netflix Feign 实现的,整理Spring Cloud Ribbon 与 Spring Cloud Hystrix,并且实现了声明式的Web服务客户端定义方式。

    创建子项目

    1.在前面的demo中,创建一个新的模块,命名为 eureka-feign-client。将porm.xml改成如下配置:

    修改application.yml的配置,代码如图:

    然后在启动类加入注解@EnableFeignClients

    实现简单Feign Client

    新建一个EurekaClientFeign接口,并加上注解@FeignClient 声明该接口为Feign Client,参数value为远程调用client的服务名,编写一个方法sayHiFromClientEureka,该方法通过Feign来调用eureka-client服务“hi”接口,代码如下:

    在service层中注入EurekaClientFeign的Bean,通过该bean调用sayHiFromClientEureka(),代码如下:

    在controller下创建一个HiController,加入@RestController注解,写一个方法调用远程服务器,具体如图:

    启动eureka-server实例,端口为8761,启动eureka-client两个实例,端口分别为8762和8763,再启动eureka-feign-client,端口为8765.

    访问:http://127.0.0.1:8761如图:

    访问 http://127.0.0.1:8762/hi?name=ggg

    访问 http://127.0.0.1:8763/hi?name=ggg

    轮询访问 /http://127.0.0.1:8765/hi?name=ggg,可以看到结果为上面两个结果的循环。

    由此可见,feign已经可以实现负载均衡了。

    相关文章

      网友评论

          本文标题:探索Finchley版Spring Cloud(声明式调用Fei

          本文链接:https://www.haomeiwen.com/subject/wrrzdftx.html