要想正确理解设计模式,首先必须明确它是为了解决什么问题而提出来的。
设计模式学习笔记,欢迎交流。
——Shulin
转载请注明出处:http://blog.csdn.net/zhshulin
1、概念
观察者模式是对象的行为模式,外号非常多...!!又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/V...
分类:
其他好文 时间:
2014-08-20 18:06:02
阅读次数:
267
Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务。它主要用于处理活跃的流式数据。 在大数据系统中,常常会...
分类:
其他好文 时间:
2014-08-19 13:03:24
阅读次数:
475
一、分布式消息总线在很多MIS项目之中都有这样的需求,需要一个及时、高效的的通知机制,即比如当使用者A完成了任务X,就需要立即告知使用者B任务X已经完成,在通常的情况下,开发人中都是在使用者B所使用的程序之中写数据库轮循代码,这样就会产品一个很严重的两个问题,第一..
分类:
Web程序 时间:
2014-08-14 17:12:09
阅读次数:
314
一、分布式消息总线 在很多MIS项目之中都有这样的需求,需要一个及时、高效的的通知机制,即比如当使用者A完成了任务X,就需要立即告知使用者B任务X已经完成,在通常的情况下,开发人中都是在使用者B所使用的程序之中写数据库轮循代码,这样就会产品一个很严重的两个问题,第一个问题是延迟,轮循机制要定时执行,...
分类:
Web程序 时间:
2014-08-14 10:22:18
阅读次数:
482
我画了个简单的架构图来帮助说明:其实为发布订阅架构模式.生产者和消费者我们统一可理解为客户端,消息中间件可认为是服务端.生产者和消费者做为客户端要跟服务端交互,则先通过代理订阅服务端,订阅成功后即可跟服务端互通互联,此刻的连接通道为长连接.长连接的优势在于会将消息主动通知到客户端,避免客户端去做大量...
分类:
其他好文 时间:
2014-08-11 21:04:33
阅读次数:
634
Apache Kafka是一个分布式消息发布订阅系统。它最初由LinkedIn公司基于独特的设计实现为一个分布式的提交日志系统( a distributed commit log),,之后成为Apache项目的一部分。Kafka系统快速、可扩展并且可持久化。它的分区特性,可复制和可容错都是其不错的特性。
Apache Kafka与传统消息系统相比,有以下不同:
它被设计为一个分布式系统,易于向外扩展;
它同时为发布和订阅提供高吞吐量;
它支持多订阅者,当失败时能自动平衡消费者;
...
分类:
其他好文 时间:
2014-08-11 15:08:32
阅读次数:
389
前言: Thrift作为Facebook开源的RPC框架, 通过IDL中间语言, 并借助代码生成引擎生成各种主流语言的rpc框架服务端/客户端代码. 不过Thrift的实现, 简单使用离实际生产环境还是有一定距离, 本系列将对Thrift作代码解读和框架扩充, 使得它更加贴近生产环境. 本文讲述.....
分类:
其他好文 时间:
2014-08-05 18:33:29
阅读次数:
295
一、开发工具1. 本项目使用Golang进行开发,主要有以下好处Golang是一种类型安全(type-safe)的语言,并且自带垃圾回收机制,避开了许多底层语言如C/C++中的陷阱引入了许多轻便实用性强的数据结构,比如变长数组,字典等提供了大量的包其中包括网络库,RPC等供编程者使用,使得开发效率更...
分类:
其他好文 时间:
2014-08-05 13:20:29
阅读次数:
436
观察者模式,也叫发布/订阅模式(publish/subscribe),监视器模式等。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。。何时能用到它?此种模式通常被用来实现事件处理系统,例如,当一个数据仓储操作中,...
分类:
其他好文 时间:
2014-08-05 10:45:29
阅读次数:
313
解释WIB 是什么之前,先回顾以下我们前面的各种服务工作方式。前面的各种服务的工作方式都是请求/应答方式。客户端发送请求,服务器端根据客户端的请求,返回相应的结果。这种方式是一种顺序式访问,是一种紧耦合的方式。服务器被动接受访问,服务器无法直接给客户端发消息。针对这种情况出现了发布/订阅方式。 发....
分类:
其他好文 时间:
2014-08-03 23:04:36
阅读次数:
393