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

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已经可以实现负载均衡了。

全部评论

相关推荐

仁者伍敌:实习生要工作经验,工作要实习经验
点赞 评论 收藏
分享
07-14 12:29
门头沟学院 Java
后端岗,实习三周感觉有点想跑路了,担心秋招被拉黑,有没有佬是字节HR知道情况的
从零开始的转码生活:你实习三周都想跑路,将来拿到offer真的愿意在这干十几二十年吗
投递字节跳动等公司8个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务