摘要: XA协议的两阶段提交方案 第一阶段是表决阶段,所有参与者都将本事务能否成功的信息反馈发给协调者;第二阶段是执行阶段,协调者根据所有参与者的反馈,通知所有参与者,步调一致地在所有分支上提交或者回滚。 但是两阶段提交方案锁定资源时间长,对性能影响很大,基本不适合解决微服务事务问题。 TCC方案 其将整个 阅读全文
posted @ 2019-03-27 21:30 facker1 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 背景 :函数上千行代码,类巨大,高耦合。业务发展到一定阶段,原来的程序设计不能满足业务需求,或者经过多遍更改后,存在大量冗余的逻辑代码;新的架构设计,进行业务拆分。 重构是在不改变项目现有的业务逻辑或者代码逻辑的基础上对程序进一步提炼或者扩展,使其结构化,代码规范化,弱耦合。非常重要的一点。 糟糕的 阅读全文
posted @ 2019-03-27 17:10 facker1 阅读(746) 评论(0) 推荐(0) 编辑
摘要: 1、 用户发送请求至前端控制器DispatcherServlet。 2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给Dispa 阅读全文
posted @ 2019-03-27 16:31 facker1 阅读(122) 评论(0) 推荐(0) 编辑
摘要: hashmap允许null key和value ,属于fail-fast,因此会抛出ConcurrentModificationException异常。当存储过多数据时,就会转成红黑树进行存储,就像java.util.TreeMap。内部维护的是一个node数组。 给hashmap进行put数据时, 阅读全文
posted @ 2019-03-27 14:29 facker1 阅读(94) 评论(0) 推荐(0) 编辑