当前位置: 首页 > news >正文

网站如何修改后台密码网站尺寸自适应

网站如何修改后台密码,网站尺寸自适应,东莞哪个镇适合打工,网站做ddns解析目录 Feign的使用及配置 1、Feign替代RestTemplate 2、使用Fegin步骤 3、自定义配置 4、Feign使用优化 5、Feign的最佳实践方式 Feign的使用及配置 1、Feign替代RestTemplate RestTemplate方式远程调用的问题 问题: 1、代码可读性差,编程体验不同…

目录

Feign的使用及配置

1、Feign替代RestTemplate

2、使用Fegin步骤

3、自定义配置

4、Feign使用优化

5、Feign的最佳实践方式


Feign的使用及配置

1、Feign替代RestTemplate

RestTemplate方式远程调用的问题

 问题:

1、代码可读性差,编程体验不同统一

2、参数复杂,URL难以维护

Feign介绍

Feign是一个声明式的http客户端,官方地址:OpenFeign · GitHub

其作用就是帮助我们实现http请求的发送,解决上面提到的问题。

2、使用Fegin步骤

1、引入依赖

        <!--feign客户端依赖--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency>

2、在启动类添加注解开启Feign的功能

@EnableFeignClients
@MapperScan("cn.itcast.order.mapper")
@SpringBootApplication
@EnableFeignClients
public class OrderApplication {public static void main(String[] args) {SpringApplication.run(OrderApplication.class, args);}
}

 3、编写Feign客户端

@FeignClient("userservice")//服务名称
public interface UserClient {@GetMapping("/user/{id}")//访问路径User findById(@PathVariable("id") Long id);//对应远程调用controller接口
}

主要是基于SpringMVC的注解来声明远程调用的信息,比如:

服务名称: userservice        请求方式:GET·        请求路径:/user/{lid}·

请求参数:Long id·        返回值类型: User

3、自定义配置

Feign运行自定义配置来覆盖默认配置,可以修改的配置如下:
 

类型作用说明
feign.Logger.Level修改日志级别包含四种不同的级别:NONE、BASIC、HEADERS、FULL
feign.codec.Decoder响应结果的解析器http远程调用的结果做解析,例如解析json字符串为java对象
feign.codec.Encoder请求参数编码将请求参数编码,便于通过http请求发送
feign.Contract支持的注解格式默认是SpringMVC的注解
feign. Retryer失败重试机制请求失败的重试机制,默认是没有,不过会使用Ribbon的重试

Feign日志配置

1、yml文件配置

全局生效

feign:client:config:default:  #这里用default就是全局配置,如果是写服务名称,则是针对某个微服务的配置loggerLevel: FULL #日志级别

局部生效

feign:client:config:userservice: #这里用default就是全局配置,如果是写服务名称,则是针对某个微服务的配置loggerLevel: FULL #日志级别

2、 java代码配置

定义一个配置类

public class DefaultFeignConfig {@Beanpublic Logger.Level logLevel(){return Logger.Level.BASIC;}
}

如果是全局配置,则把它放到@EnableFeignClients这个注解中:

@EnableFeignClients(defaultConfiguration = DefaultFeignConfig.class)

如果是局部配置,则把它放到@FeignClient这个注解中:

@FeignClient(value = "userservice",configuration = FeignClientConfiguration.class)

4、Feign使用优化

Feign底层的客户端实现:

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

Apache HttpClient:支持连接池

OKHttp:支持连接池

因此优化Feign的性能主要包括:

使用连接池代替默认的URLConnection

日志级别,最好用basic或none

1、引入依赖

        <!--引入HttpClient依赖--><dependency><groupId>io.github.openfeign</groupId><artifactId>feign-httpclient</artifactId></dependency>

 2、配置连接池

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

总结:

Feign的优化:
1.日志级别尽量用basic
2.使用HttpClient或OKHttp代替URLConnection
        引入feign-httpClient依赖
        配置文件开启httpclient功能,设置连接池参数

5、Feign的最佳实践方式

方式一(继承):

给消费者的FeignClient和提供者的controller定义统一的父接口作为标准。
 

 弊端:

1、服务紧耦合
2、父接口参数列表中的映射不会被继承

方式二(抽取):

将FeignClient抽取为独立模块,并且把接口有关的POJO、默认的Feign配置都放到这个模块中,

提供给所有消费者使用

使用这种方式时,如果定义的FeignClient不在SpringBootApplication的扫描包范围时,这些

FeignClient无法使用。有两种方式解决:

1、指定FeignClient所在包

 2、指定FeignClient字节码

 总结:Feign的最佳实践

1、让controller和FeignClient继承同一接口

2、将Feignclient、POJO、Feign的默认配置都定义到一个项目中,供所有消费者使用
 

http://www.yayakq.cn/news/148203/

相关文章:

  • 西双版纳关键词优化排名价格
  • 电子商务网站建设系统wordpress类似的工具
  • haai商城网站建设公司排名天马行空网站建设
  • 利川网站建设网页设计页面链接
  • 基于h5的企业网站建设建设网站建设哪里好
  • 网站 做百度推广有没有效果企业网站报价模板下载
  • 公司建设网站申请信用卡吗wordpress 采集
  • 济南能源建设网站网站建设协议 模板下载
  • 如何建立一个个人网站PS做游戏网站需要做几个网页
  • 包装设计网站是什么样子的形容网站页面做的好的词语
  • 网站免费建站系统 六自媒体素材视频网站
  • 公司建一个网站多少钱网站备案后经营
  • 黄岛网站建设站长网站推广
  • 上市公司网站建设方案长沙做网站一般多少钱合适
  • 网站是谁做的青岛房产交易中心官网
  • 网站一年了百度不收录深圳58同城招聘网
  • 秦皇岛制作网站农产品线上推广方案
  • 《电子商务网站建设》精品课电脑上怎样运行wordpress
  • 百度站长平台清退自己做的网站加载慢
  • 舟山网站建设流程苏州公司名称查询
  • m开头的手机网站怎么做微信小网站是怎么做的
  • 天水网站开发自己做ppt网站
  • 提示该域名为lp网站注册商标有什么好处和坏处
  • 上海网站建设 seo建设网站需要钱吗
  • 如何做网站费用多少企业网站建设不要空间可以吗
  • 音乐网站制作课程报告芜湖网站建设推广
  • 网站tdk标签用商标域名注册的非盈利网站
  • 坑梓网站建设咨询《网站建设》项目实训报告
  • 做海报的网站什么编辑江门关键词优化公司
  • 私人网站免费观看百度有刷排名软件