springboot项目集成Feign框架(微服务消费者)

此篇的基础是已经将子项目注册到服务器上,可以参考上一节集成Erueka

查看集成Erueka的步骤

常见消费者模式

  1. 服务直连模式:无注册的服务,比如使用RestTemplate就可以直接获得资源。非常简单,语言平台无关。但是无法做到负载均衡。
  2. 客户端发现模式:服务实例启动后,将自己位置提交到注册表中。客户端自行使用负载均衡算法从多个服务实例中选择出一个。

常见微服务消费者

  1. HttpClient:HTTPclient集成RestTemplate与Httpclient介绍
  2. Ribbon:springcloud中的一个组件,基于Netflix来实现的一套客户端负载均衡服务器经常与Erueka搭配使用。
    gredual的依赖如下:

springboot项目集成Feign框架(微服务消费者)_第1张图片
springboot项目集成Feign框架(微服务消费者)_第2张图片
springboot项目集成Feign框架(微服务消费者)_第3张图片

集成Feign

  1. 添加依赖
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
            <version>2.1.3.RELEASE</version>
        </dependency>
  1. 启动类加上@EnableFeignClients
  2. 加上一个Feign接口
@FeignClient("注册到服务器中的实例名称")
public interface XXX {

	@GetMapping("/实例对应的子项目下的接口")
	String XXX();
}

4.直接 autowired这个接口就可以使用了。
5.可以在.properties中加入参数规定连接时间和去资源时间限制,避免资源浪费:

feign.client.config.feignName.connectTimeout: 5000
feign.client.config.feignName.readTimeout: 5000

6.就可以把微服务子项目中的需要改动的全部改完,就全部启动和上一篇最后一样,Feign就自行实现负载均衡的功能了。


你可能感兴趣的:(springboot项目集成Feign框架(微服务消费者))