依赖倒置原则A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。B.抽象不应该依赖于具体,具体应该依赖于抽象。依赖倒置原则A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。B.抽象不应该依赖于具体,具体应该依赖于抽象。目录1概述2意图3代码实现4结构图1概述编辑所谓依赖倒置...
分类:
Web程序 时间:
2014-07-27 23:30:50
阅读次数:
388
Sheepdog,是由NTT的3名日本研究员开发的开源项目,主要用来为虚拟机提供块设备。其架构例如以下:以下,我们将从架构、模块等几个方面来介绍下:一、架构图如上图:採用无中心节点的全对称架构,无单点故障,存储容量和性能可线性扩展;新增节点通过简单配置可自己主动添?(IP:PORT),数据自己主动实...
分类:
其他好文 时间:
2014-07-27 23:11:39
阅读次数:
215
今天移动信息解决方案已经广泛应用于旅游行业。但是,大部分解决方案关注构建一些游客推荐服务来吸引游客。下面描述的移动导游解决方案,提供全面地个人性信息推荐服务。关键原则是开发基于事实提供相关真实有效旅游景点相关信息,它应该基于分析当前场景。 先来看移动导游系统架构图: 提供旅游相关决策,特别是行程。公...
分类:
移动开发 时间:
2014-07-27 22:23:59
阅读次数:
294
bfs 构建层次图,dfs 寻找增广路。dfs在寻找增广路的同时自我调整直到此时的层次图无增广路时 重新构图,直到无增广路为止。对于添加反弧,觉得对于每点 进流量和 出流量应该守恒,反向弧的添加方便自我调整,而通过每点的流量没变,最后导致流到终点的流量不变。#include #include #in...
分类:
其他好文 时间:
2014-07-27 22:19:49
阅读次数:
191
定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
适用地方:中介者模式一般应用于一组对象以定义良好但是复杂的方式进行通信的场合以及想定制一个分布在多个类中的行为,而又不想生成太多的子类的场合。
优点:中介者的出现减少了各个对象的耦合,使得可以独立地改变和复用各个对象类和中介类,比如任何国家的改变不会影响...
分类:
其他好文 时间:
2014-07-27 11:25:32
阅读次数:
187
定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。
适用地:当有一个语言需要解释执行,并且你可将该语言中的句子表示为一个抽象语法树时,可使用解释器模式。如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。像正则表达式、浏览器应...
分类:
其他好文 时间:
2014-07-27 11:25:22
阅读次数:
198
链接:http://poj.org/problem?id=1659
题意:有n个湖泊,如果湖泊A和湖泊B之间有水路连接,则称他们互为邻居,现给出n个湖泊的邻居个数,如果他们可以构成一个图则输出YES和邻接矩阵,否则输出NO
这道题实际是给一个序列,看序列是否是一个可图序列。可以根据Havel-Hakimi定理的方法来构图,并在构图中判断是否出现了以下两种不合理的情形:
(1)某次对剩...
分类:
其他好文 时间:
2014-07-26 15:01:30
阅读次数:
178
最近研究了下NameNodeHAAutomaticFailover方面的东西,当ActiveNN因为异常或其他原因不能正常提供服务时,处于Standby状态的NN就可以自动切换为Active状态,从而到达真正的高可用NNHAAutomaticFailover架构图为了实现自动切换,需要依赖ZooKeeper和ZKFC组件,ZooKeeper主要用来..
分类:
其他好文 时间:
2014-07-26 03:27:38
阅读次数:
392
实验环境搭建基础架构图如下:AD同时配置DNS功能,实现互通及域名正反解析功能!Linux机器配置系统及本版信息如下Krb5软件安装需要安装以下4个软件:krb5-workstationkrb5-develkrb5-libspam_krb5[root@centos6-server~]#rpm-qa|grepkrbkrb5-libs-1.10.3-10.el6.i686krb5-devel..
分类:
系统相关 时间:
2014-07-26 03:21:58
阅读次数:
8257
分析: 基础的欧拉路算法,变化在于要求每条边正向和反向各走一遍。 链式前向星构图,只要标记走过的单向边,边找边输出即可。code#include #include using namespace std;struct node { int v, ne;} edge[100009];int h...
分类:
其他好文 时间:
2014-07-26 00:22:06
阅读次数:
221