随笔分类 -  设计模式

设计模式
摘要:解决方案 本地消息表 本地消息表的关键在于本地有一张存储消息日志的记录表,需要启动一个定时任务去不停地扫描消息日志记录,确保消息能够被发送。具体流程如下图: 上图流程: 1)事务发起方本地事务执行成功,在本地消息表中记录消息日志。2)启动定时任务,循环扫描本地消息表。3)定时任务扫描到消息则发送消息 阅读全文
posted @ 2021-09-25 10:41 大雾哥 阅读(124) 评论(0) 推荐(0) 编辑
摘要:抽象工厂模式(Abstact Factory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个具体的工厂类。一、意图抽象工厂模式提供一个创建一系统相关或相互依赖对象的接口,而无需指定它们具体的类【GOF95】二、抽象工厂 阅读全文
posted @ 2020-08-13 11:35 大雾哥 阅读(663) 评论(0) 推荐(1) 编辑
摘要:class Singleton { //私有静态属性:用来保存已经产生的对象 private static $obj; //私有化构造方法 private function __construct(){} //公有静态方法 public static function getInstance() ... 阅读全文
posted @ 2018-12-20 23:55 大雾哥 阅读(135) 评论(0) 推荐(0) 编辑
摘要:命令模式 将一个请求封装为一个对象,从而使用户可用不同的请求对客户进行参数化。对请求排队或记录请求日志,以及支持撤销的操作。 命令模式以松散耦合主题为基础,发送消息、命令和请求,或通过一组处理程序发送任意内容。每个处理程序都会自行判断自己能否处理请求。如果可以,该请求被处理,进程停止。您可以为系统添 阅读全文
posted @ 2018-08-01 13:53 大雾哥 阅读(1156) 评论(0) 推荐(0) 编辑
摘要:1 '; 41 } 42 } 43 44 /** 45 * Class byBus具体策略角色 46 * 乘公交 47 */ 48 class byBus implements Travel { 49 public function go() 50 { 51 echo '我乘公交出去玩'; 52 } 53 } ... 阅读全文
posted @ 2018-08-01 10:40 大雾哥 阅读(264) 评论(0) 推荐(0) 编辑
摘要:1 _observers as $obs ){ 68 $obs->onBuyTicketOver ( $this, $ticket ); //$this 可用来获取主题类句柄,在通知中使用 69 } 70 } 71 //添加通知 72 public function addObserver($observer) //添... 阅读全文
posted @ 2018-07-27 10:49 大雾哥 阅读(179) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示