Feign性能优化以及最佳实践

1.Feign性能优化

Feign底层发起http请求,依赖于其它的框架。其底层客户端实现包括:

•URLConnection:默认实现,不支持连接池

•Apache HttpClient :支持连接池

•OKHttp:支持连接池

优化1:因此提高Feign的性能主要手段就是使用**连接池**代替默认的URLConnection。

优化2:日志的级别,根据项目测试,确定最大连接数 和 单个路径的最大连接数,日志 尽量用 basic

引入连接池依赖

!--httpClient的依赖  feign性能优化-->
        
            io.github.openfeign
            feign-httpclient
        

在YML文件配置

feign:
  httpclient:
    enabled: true #支持httpclient的开关
    max-connections: 200 #最大连接数
    max-connections-per-route: 50 #单个路径的最大连接数

2.最佳实践

可以用继承,在POM引入依赖,由于继承耦合度太高,使用引入依赖方式

1.新建Maven模块

Feign性能优化以及最佳实践_第1张图片

 添加Feign依赖

 
            io.github.openfeign
            feign-httpclient
        

把实体类,FeignClient类加入 删除原模块重复内容,

添加

//添加注解,指定服务名称,yml名称
@FeignClient("user")
public interface FiegnConfiguration {

    @GetMapping("/user/id?id={ied}")
    User getUser(@PathVariable("ied") Long id);


    @PostMapping("/user/name")
    name getname(name name);
}

       引入自定义api-->
        
            cn.itcast.demo
            feign-api
            1.0
        

你可能感兴趣的:(SpringCloud,性能优化,okhttp)