随笔分类 - JAVA进阶
摘要:RocketMQ作为消息中间件,在系统异步化架构中,应用非常广泛。但是我们在享用RocketMQ的同时,也不能百分百完全信赖它。一旦RocketMQ崩溃了,给我们业务带来的也将是毁灭性打击。 因此,我们在使用RocketMQ的时候,一定要做好补偿工作。 下面提供一个RocketMQ的补偿架构图,已在
阅读全文
摘要:场景描述: 以金融行业的贷款业务为例,客户提交贷款申请,即进件。系统针对进件需要做一系列处理:保存申请信息、保存客户信息、对客户评分、触发风控检查、埋点、消推等。 传统编码方式: 竖向编程方式,就是按照逻辑一步一步执行。这样做的缺点,就是代码耦合度太高。 使用责任链模式和观察者模式解耦: 责任链模式
阅读全文
摘要:动态代理模式,在当前流行框架(如:Spring、Mybatis、Dubbo)中应用非常广泛,掌握动态代理模式是理解框架源码的基础。如果未来你参与框架的设计与开发,动态代理模式必将成为你的利器。 动态代理的实践:一、创建实现InvocationHandler接口的类,并重写invoke方法;二、使用P
阅读全文
摘要:设计模式是前辈们对代码日积月累的总结,形成的一种良好的编程思想和技巧。 单例模式,使用非常广泛,本篇将介绍三种常用的单例模式的实践:类加载时初始化类对象(也叫饿汉模式)、延迟加载初次调用时初始化类对象(也叫饱汉模式)、双重检查机制。 一、类加载时初始化类对象(也叫饿汉模式):首先构造函数要使用pri
阅读全文

浙公网安备 33010602011771号