当前位置: 代码网 > it编程>编程语言>Java > 微服务入门篇:http客户端Feign(远程调用,自定义配置,Feign的性能优化,Feign服务抽取)

微服务入门篇:http客户端Feign(远程调用,自定义配置,Feign的性能优化,Feign服务抽取)

2024年07月31日 Java 我要评论
其作用就是帮助我们优雅的实现http请求的发送,解决上面提到的问题。1.引入依赖:2.在order-service的启动类添加注解开启Feign的功能:3.编写Feign客户端:修改service层中的服务层代码使用FeignClient中定义的方法代替RestTemplate:修改orderservice的yaml:启动服务,发现服务:访问order接口,实现Feign的远程调用和负载均衡。Feign已经集成了ribbon。

1.基于feign的远程调用

1.resttemplate方式调用存在的问题

2.feign的介绍

 https://github.com/openfeign/feign

3.定义和使用feign客户端

1.引入依赖:
在这里插入图片描述

2.在order-service的启动类添加注解开启feign的功能:
在这里插入图片描述

3.编写feign客户端:

在这里插入图片描述
修改service层中的服务层代码
使用feignclient中定义的方法代替resttemplate:
在这里插入图片描述
修改orderservice的yaml:
在这里插入图片描述
启动服务,发现服务:
在这里插入图片描述

2.自定义配置

在这里插入图片描述

配置feign日志:

1.方式一:配置文件方式

1.全局生效:
在这里插入图片描述

2.局部生效:

2.方式二: java代码方式,需要先声明一个bean:

在这里插入图片描述

1.而后如果是全局配置,则把它放到@enablefeignclients这个注解中:
在这里插入图片描述

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

在这里插入图片描述

3.feign的性能优化

1.feign底层的客户端实现

2.连接池配置

1.feign添加httpclient的支持:
引入依赖:
在这里插入图片描述

2.配置连接池:

在这里插入图片描述

4.feign的最佳实践

1.方式一(继承)︰

2.方式二(抽取)∶

实现步骤如下:
1.首先创建一个module,命名为feign-api,然后引入feign的starter依赖

在这里插入图片描述
在这里插入图片描述

2.将order-service中编写的userclient、user、defaultfeignconfiguration都复制到feign-api项目中
在这里插入图片描述

3.在order-service中引入feign-api的依赖
在这里插入图片描述
4.修改order-service中的所有与上述三个组件有关的import部分,改成导入feign-api中的包
5.重启测试

在这里插入图片描述

1.方式一:指定feignclient所在包
在这里插入图片描述

1.方式二:指定feignclient字节码
在这里插入图片描述

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com