定义: 组合模式(Composite):将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。当你发现需求中是体现部分与整体层次的结构时,以及你希望用户可以忽略组合对象与单个对象的不同,统一的使用组合结构中的所有对象时,就应该考虑用组合模式了。 实 ...
分类:
Web程序 时间:
2020-05-03 17:00:00
阅读次数:
69
在实际开发中,为了服务更好的响应,通常会设置数据库的读写分离,主库负责写入更新等操作,从库负责读操作。 以下是YII2中配置MySQL读写分离,一主多从设置。设置好后,这些从库其中之一将被建立起连接并执行读操作,而主库将被用来执行写操作。 这样的读写分离将通过以下配置自动地完成。 return [ ...
分类:
数据库 时间:
2020-05-03 16:32:21
阅读次数:
75
简单描述 策略模式(Strategy Pattern)作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。比如每个人都要“交个人所得税”,但是“在美国交个人所得税”和“在中国交个人所得税”就有不同的算税方法。 策略模式是一种对象行为型模式。 模式结构 策略模式包含如下 ...
分类:
Web程序 时间:
2020-04-27 09:30:35
阅读次数:
84
定义: 原型模式(Prototype):用原型实例指定创建对象的种类,并且通过 clone 这些原型创建新的对象。原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。目的是使用 clone 对象来减少 new 对象的开销。 原型 clone 有浅复制和深复制:浅复制: ...
分类:
Web程序 时间:
2020-04-05 13:17:33
阅读次数:
77
定义: 工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 代码实例: 这里还是接着上篇简单工厂模式的那个例子,改成工厂方法模式。 1、创建一个抽象类 ApptEncoder /** * 抽象类 * Class ApptEncoder */ a ...
分类:
Web程序 时间:
2020-03-22 15:52:43
阅读次数:
90
定义: 简单工厂模式:将调用者和创建者分离,实现解耦,调用者直接向工厂请求,通过工厂去选择需要实例化的对象,用一个单独的类来做这个创建实例的过程。 代码实例: 问题:假设一个关于个人事务管理的项目中有许多类型的对象,其中一个是 Appointment 对象,现在需要通过一种称为 BloggsCal ...
分类:
Web程序 时间:
2020-03-22 13:56:12
阅读次数:
86
Atlas做mysql读写分离:Atlas奇虎360的一个开源中间代理,是在mysql-proxy0.8.2的基础上进行了优化,增加一些新的功能特性。wgethttps://github.com/Qihoo360/Atlas/releases/download/2.2.1/Atlas-2.2.1.el6.x86_64.rpmrpm-iAtlas-2.2.1.el6.x86_64.rpm安装路径为/
分类:
数据库 时间:
2020-02-26 17:09:29
阅读次数:
75
关于MySQL的读写分离的实现,有两种方式。 1.第一种方式即我们手动在代码层实现逻辑,来解析读请求或者写请求,分别分发到不同的数据库中,实现读写分离; 2.第二种方式就是基于MyCat中间件来实现读写分离的效果; 优劣分析 关于这两种方式的优劣。 代码层实现读写分离,主要的优点就是灵活,可以自己根 ...
分类:
数据库 时间:
2020-02-23 14:23:17
阅读次数:
82
一、什么是读写分离 在数据库集群架构中,让主库负责处理事务性查询,而从库只负责处理select查询,让两者分工明确达到提高数据库整体读写性能。当然,主数据库另外一个功能就是负责将事务性查询导致的数据变更同步到从库中,也就是写操作。 二、读写分离的好处 1)分摊服务器压力,提高机器的系统处理效率 读写 ...
分类:
数据库 时间:
2020-02-22 00:10:19
阅读次数:
90
什么是读写分离 在数据库集群架构中,让主库负责处理事务性查询,而从库只负责处理select查询,让两者分工明确达到提高数据库整体读写性能。当然,主数据库另外一个功能就是负责将事务性查询导致的数据变更同步到从库中,也就是写操作。 读写分离的好处 1)分摊服务器压力,提高机器的系统处理效率 读写分离适用 ...
分类:
数据库 时间:
2020-02-21 21:57:28
阅读次数:
89