摘要: 分布式锁的解决方式 1、是否可以考虑采用ReentrantLock来实现,但是实际上去实现的时候是有问题的,ReentrantLock的lock和unlock要求必须是在同一线程进行,而分布式应用中,lock和unlock是两次不相关的请求,因此肯定不是同一线程,因此导致无法使用ReentrantL 阅读全文
posted @ 2016-08-27 09:32 wade&luffy 阅读(1951) 评论(0) 推荐(1) 编辑
摘要: 定义 合成模式属于对象的结构模式,有时又叫做“部分——整体”模式。合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式可以使客户端将单纯元素与复合元素同等看待。 合成模式 合成模式把部分和整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分对象和由它们复合而成的合成对象同 阅读全文
posted @ 2016-08-25 20:10 wade&luffy 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 定义 Flyweight在拳击比赛中指最轻量级,即“蝇量级”或“雨量级”,这里选择使用“享元模式”的意译,是因为这样更能反映模式的用意。享元模式是对象的结构模式。享元模式以共享的方式高效地支持大量的细粒度对象。 结构 享元模式采用一个共享来避免大量拥有相同内容对象的开销。这种开销最常见、最直观的就是 阅读全文
posted @ 2016-08-25 17:29 wade&luffy 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 定义 桥梁模式是对象的结构模式。又称为柄体(Handle and Body)模式或接口(Interface)模式。桥梁模式的用意是“将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者可以独立地变化”。 桥梁模式的用意 桥梁模式虽然不是一个使用频率很高的模式,但是 阅读全文
posted @ 2016-08-25 17:09 wade&luffy 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 定义 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 适配器模式的用途 用电器做例子,笔记本电脑的插头一般都是三相的,即除了阳极、阴极外,还有一个地极。而有些地方的电源插座却只有两极,没有地极。电源插座与笔记本电脑的电源插头不匹 阅读全文
posted @ 2016-08-25 16:37 wade&luffy 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 定义 建造模式是对象的创建模式。建造模式可以将一个产品的内部表象(internal representation)与产品的生产过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。 产品的内部表象 一个产品常有不同的组成成分作为产品的零件,这些零件有可能是对象,也有可能不是对象,它们 阅读全文
posted @ 2016-08-25 15:02 wade&luffy 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 单例模式 确保一个特殊类的实例是独一无二的(它是这个类的唯一实例),并且这个实例易于被访问。 解决方案 1)全局变量:一个全局变量使得一个对象可以被访问,但它不能防止你实例化多个对象。因为你的任何代码都能修改全局变量,这将不可避免的引起更多调试的意外。换句话说,全局变量的状态总是会出现一些问题的。 阅读全文
posted @ 2016-08-25 14:19 wade&luffy 阅读(1317) 评论(0) 推荐(0) 编辑
摘要: 定义 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。 门面的用途 现代的软件系统都是比较复杂的,设计师处理复杂系统的一个常见方法便是将其“分而治之”,把一个系统划分为几个较小的子系统。如果把医院作为一个子系统,按照 阅读全文
posted @ 2016-08-25 13:05 wade&luffy 阅读(249) 评论(0) 推荐(0) 编辑
摘要: Java Queue基础 Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构。 offer,add区别: 一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。 这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchec 阅读全文
posted @ 2016-08-14 21:16 wade&luffy 阅读(5791) 评论(0) 推荐(0) 编辑
摘要: AMQP(高级消息队列协议 Advanced Message Queue Protocol) Rabbitmq系统最核心的组件是Exchange和Queue,下图是系统简单的示意图。Exchange和Queue是在rabbitmq server(又叫做broker)端,producer和consum 阅读全文
posted @ 2016-08-14 17:24 wade&luffy 阅读(538) 评论(0) 推荐(0) 编辑