1.创建一个feign服务,选择依赖时,添加eureka Discovery ,web ,feign:
2.修改配置文件application.yaml:
3.添加注解,在启动类上添加@EnableDiscoveryClient(使得注册中心发现该服务),添加@EnableFeignClients,声明是一个Feign的客户端。
4.因为feign是采用基于接口的注解,所以我们需要新建一个接口,使用这个接口调用服务提供商。
新建userService的接口。
添加注解@FeignClient(value=”user-service”)
注意:
使用@FeignClient表明该注解是一个Feign声明的客户端,设置里面的value参数为user-service,表明它将去调用服务提供商的user-service服务,即注解里面的值需要和第二节讲到的服务提供商user-server里的application.yaml配置文件中的名字一致,参见图中两处。
5.开启测试
图中可以看出,feign服务器已经注册到eureka上了:
同时我通过修改端口的开启了两个服务提供商,分别是8080和8282,分别在网页上输出不同的语句:
8082端口输出 :I am a user-service provider 222222!
8080端口输出:I am a user-service provider!
在eureka主页点进feign服务器,不停刷新(9091端口),可以看出,已经实现了负载均衡: