摘要: 实现容错服务器的一种常见方法是主/备份方法,在主服务器发生故障时,总是可以使用备份服务器进行接管。 备份服务器的状态必须始终保持与主服务器几乎相同,以便在主服务器发生故障时,备份服务器可以立即接管,并且以这种方式将故障隐藏在外部客户机中,不会丢失任何数据。 在备份服务器上复制状态的一种方法是几乎连续 阅读全文
posted @ 2020-08-25 14:20 止水于石 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 单一Master节点 单一的Master节点的策略大大简化了我们的设计。单一的Master节点可以通过全局的信息精确定位Chunk的位置以及进行复制决策。另外,我们必须减少对Master节点的读写,避免Master节点成为系统的瓶颈。客户端并不通过Master节点读写文件数据。反之,客户端向Mast 阅读全文
posted @ 2020-08-19 16:25 止水于石 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 多线程 I/O 并发(做多件事情)、并行(CPU)。 多线程是一个结构化工具,但是有一些坑 Go 叫多线程为 goroutines; Thread = 执行线程 多线程允许一个程序在执行时去做很多事情。 每个线程都是串行执行,就像是非线程程序 线程可以共享内存 每个线程都有自己的线程状态:程序计数器 阅读全文
posted @ 2020-08-13 13:25 止水于石 阅读(260) 评论(0) 推荐(0) 编辑
摘要: MapReduce是一个编程模型,也是一个处理和生成超大数据集的算法模型的相关实现。用户首先创建一个Map函数处理一个基于key/value pair的数据集合,输出中间的基于key/value pair的数据集合;然后再创建一个Reduce函数用来合并所有的具有相同中间key值的中间value值。 阅读全文
posted @ 2020-07-22 17:11 止水于石 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 复合模式 模式通常被一起使用,并被组合在同一个设计解决方案中。 复合模式在一个解决方案中结合两个或多个模式,以解决一般或重复发生的问题。 MVC是复合模式,结合了观察者模式、策略模式和组合模式。 模型使用观察者模式,以便观察者更新,同时保持两者之间解耦。 控制器是视图的策略,视图可以使用不同的控制器 阅读全文
posted @ 2020-06-15 20:29 止水于石 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 状态模式 状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 状态模式允许一个对象基于内部状态而拥有不同的行为。 和程序状态机(PSM)不同,状态模式用类代表状态。 Context会将行为委托给当前状态对象。通过把每个状态封装进一个类,我们把以后需要做的任何改变局部化了。 状 阅读全文
posted @ 2020-06-09 17:45 止水于石 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式: 模板方法定义了一个算法的步骤,并允许子类为一个或多个步骤是提供实现。 模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 设计原则:好莱坞原则 别调用(打电话给)我们,我们会调用(打电话给)你 阅读全文
posted @ 2020-06-02 15:55 止水于石 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 命令模式 封装调用。命令模式将“请求”封装成对象,以便使用不同的请求,队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 使用宏命令 适配器模式与外观模式 客户使用适配器的过程如下: 客户通过目标接口调用适配器的方法对适配器发出请求。 适配器使用被适配者接口把请求转换成被适配者的一个或多个调 阅读全文
posted @ 2020-05-27 14:04 止水于石 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 工厂模式: 所有工厂模式都用来封装对象的创建。工厂方法模式(Factory Method Pattern)通过让子类决定该创建的对象是什么,来达到将对象创建的过程封装的目的。 创建者类(Creator):抽象创建者类,它定义了一个抽象的工厂方法,让子类实现此方法制造产品。 创建者通常会包含依赖于抽象 阅读全文
posted @ 2020-05-20 16:59 止水于石 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 松耦合的威力: 当两个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。 观察者模式提供了一种对象设计,让主题和观察者之间松耦合。 关于观察者的一切,主题只知道观察者实现了某个接口( 阅读全文
posted @ 2020-05-12 14:45 止水于石 阅读(149) 评论(0) 推荐(0) 编辑