学习总结
ALittle_study
每天学习一点点
展开
-
本地openfeign调用超时问题
配置文件添加feign超时时间feign:client:config:default:connectTimeout: 160000000原创 2021-12-27 16:11:48 · 983 阅读 · 0 评论 -
本地使用代理注册consul问题
本地使用代理注册consul问题需要添加成代理的地址,否则只能通过健康检测,服务检测会失败,修改方法: 添加配置 ip-address: ip(代理的ip,不是局域网的ip)原创 2021-12-19 21:52:27 · 387 阅读 · 0 评论 -
缓冲与数据库双写一致性问题?
1)先删除缓冲再更新数据库出现的问题假设现在两个线程,A线程删缓冲然后更新数据库,B线程读取redis发现缓冲为空,读取数据库读取到老数据,造成缓冲里一直为老数据B线程为什么可以读取Update操作?mysql采用的mvcc(多版本并发控制)A线程操作的时候还没有记录到undolog日志中,其他线程读取的都是undolog的历史数据undolog 结构 1)操作的事务id 2)指向上一个版本的指针 3)操作行的唯一id(比如主键,主键不存在会自动生成一个)2)先更新数据库在更新缓冲的问题数据原创 2021-07-26 16:33:14 · 86 阅读 · 0 评论 -
ThreadLocal原理
一般我们使用ThreadLocal一般都定义成一个全局的变量,但全局变量如果是同一个对象(单例下)中的,有其他线程其内容时,就会造成数据不一致的情况,那么ThreadLocal是如何解决这个问题的?1)当我们使用ThreadLocal.set()方法看看其内部是怎么来保证每个线程独享的可以看出哪怕多线程的情况下也会是每个线程取自己的线程属性getMap()方法这里可以看出线程里面有个属性是threadLocals变量,即每个线程都维护一个ThreadLocals的变量2)threadLocal原创 2021-07-02 11:35:32 · 88 阅读 · 0 评论 -
mybatis为什么方法不能重载?
mybatis为什么方法不能重载?当我们再xml中定义两个方法名相同参数不同执行时却抛出The error may exist in com.xxx.xml,出现问题的原因:1)读取并解析mapper.xml文件时解析到我们的sql语句时如下图context包含内容<mapper namespace="com.easyexcel.xiajing2PrintExcel.Xiajing2inter.XiajingTest"><sql id="test"> i原创 2021-06-25 10:46:02 · 550 阅读 · 0 评论