摘要:

一、描述 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。也称为发布-订阅模式。 角色: 1.抽象目标类:除自身业务逻辑外,包含增加、删除、唤醒观察者功能。 2.具体目标类:为那些在目标发生改变时需获取通知的对象定义一个更新接口。 2.抽象观察
阅读全文
摘要:

一、描述 允许一个对象在其内部状态发生改变时改变其行为能力。对象的行为依赖于它的状态,并且可以根据它的状态改变而改变它的相关行为。每个状态通过持有Contetxt的引用,来实现状态转移。 一个对象的状态改变了,那么他的操作也会随之改变。 角色: 1.使用环境角色(Context):根据不同的状态在相
阅读全文
摘要:

一、问题描述 发生在生产环境的真实案件,加了一张分表之后,导致系统挂掉,此外,分表还未有任何数据记录。分表配置与其他相同分表的配置相同。 二、排查过程 1.刚开始系统挂掉时,以为是系统问题,因此重启系统。重启完成之后,系统正常了几分钟之后,又继续宕机。 2.去除新增的分表之后,系统正常。 三、数据背
阅读全文
摘要:

一、描述: 把请求从链中的一个对象传到下一个对象,直到请求被响应为止。通过这种方式去除对象之间的耦合。避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。 角色: 1.抽象处理者角色:定义处理的抽象方法,可以设置具体处理
阅读全文
摘要:

一、描述 将一个请求封装为一个对象,使请求者和接收者分离开来,实现解耦。可以提供命令的撤销和恢复功能。 角色: 1.请求者:发出请求,调用命令。 2.抽象命令类:定义抽象接口。 3.具体命令类:实现抽象命令类中的抽象接口,将命令发送给接收者。 4.接收者:接收命令,并且做出相关操作。 类图: 二、优
阅读全文