关于SpringCloud项目使用Openfeign分布式调用的相关问题

以下条目待细化:

1、shiro分布式权限管理

2、同一个服务中相同名字的@Feignclient以及一个服务依赖另外一个服务且两个服务中均需要使用Feign来作调用,即使有两个启动类中均需要加上@EnableFeignClient注解,这种情况首先需要通过@EnableFeignClient注解的value属性来做区分/标识,再通过@FeignClient的contextId属性来区分

3、Feign调用其他服务时,无法将本请求中的Cookies传递给其他服务,需要配置feign请求的拦截器,将cookies传递过去—配置Feign.Request Intercepter 的bean交给spring管理

4.(重要),服务之间产生依赖时的 依赖包、配置文件/信息的覆盖、冲突等问题

5、https://blog.csdn.net/weixin_43480441/article/details/127685190
(了解其中的ThreadLocal原理)

6.与5和3相关 :服务之间调用传值问题! 独立服务之间接口(方法)调用的传参数和返回值:通过接口(方法)的传参数和返回来传值,耦合度太高,某些场景下, 不利于开发和维护。

7、 https://www.404bugs.com/details/1078066171969589248 连接为6的解决方案,已验证可行,目前有返回response中中文乱码问题

8、openfeign相关坑 :https://developer.aliyun.com/article/1110772

9、openfeign常出现的问题:https://www.yii666.com/blog/299597.html

12、pagehelper 分布式调用无法分页问题,思路参考7和chatgpt的回答。 将服务提供方(查询数据库方)得到的数据放入response中,在服务消费方,通过响应拦截器(okhttp),取出数据: 重点!!!如下:方案一,将分页信息放入PageHelper的ThreadLocal线程中,让pagehelper自动去获取。方案二,在响应拦截器中将分页信息放在当前服务消费方请求中,然后再到请求中去获取

https://mbd.baidu.com/ug_share/mbox/4a83aa9e65/share?product=smartapp&tk=378523cecfb669fb064aa912c3c16abd&share_url=https%3A%2F%2Fyebd1h.smartapps.cn%2Fpages%2Fblog%2Findex%3FblogId%3D117389318%26_swebfr%3D1%26_swebFromHost%3Dbaiduboxapp&domain=mbd.baidu.com

13、使用ThreadLocal存储分页相关信息见上面链接(跨类获取ThreadLocal中的变量)

14、关于ThreadLocal写的很好的一篇文章
https://blog.csdn.net/u010445301/article/details/111322569

15、IMPORTANT! IMPORTANT!
集合ThreadLocal理解线程

本文链接:https://my.lmcjl.com/post/7045.html

展开阅读全文

4 评论

留下您的评论.