架构设计
文章平均质量分 81
fcaord
这个作者很懒,什么都没留下…
展开
-
【SEDA异步框架】【一】SEDA国内外研究现状
一、SEDA国内外研究现状1、SEDA架构的起源和特点 当前最流行的互联网服务器模型基本都是基于多线程/进程并发服务模型。然而当线程数目增加到一定值后,系统性能会下降,这就限制了系统支持高并发请求的能力。这种缺陷是多线程/进程本身的架构造成的。加州大学伯克利分校的Matt Welsh提出了一种新的服务器软件架构SEDA。SEDA是Staged Event-Driven Archi转载 2014-01-10 15:20:29 · 1436 阅读 · 1 评论 -
【SEDA异步框架】【三】异步框架技术选型
基于SEDA的异步框架设计与实现三、异步框架技术选型 在这次实现的SEDA异步框架中,采用的基础架构原型如下: 采用了spring+quartz+fastjson+rabbitmq来实现。和传统SEDA架构区别比较大的地方在于: 1、采用分布式mq(使用了rabbitmq)而不是blockingqueue。如此转载 2014-01-13 10:30:50 · 1201 阅读 · 3 评论 -
【SEDA异步框架】【二】为什么使用SEDA
基于SEDA的异步框架设计与实现二、为什么使用SEDA 目前,面对并发环境,主流互联网服务器编程模型有两种:多线程模型以及事件驱动模型。但是这两个模型都不足以解决这个问题。我们来首先看一下这两种编程模型。 1、多线程并发模型 多线程并发模型是目前最普遍的服务器编程模型,该模型的架构如下图所示:转载 2014-01-10 15:25:02 · 799 阅读 · 0 评论 -
【SEDA异步框架】【四】异步框架总体设计与实现
基于SEDA的异步框架设计与实现四、异步框架总体设计与实现 1、框架中的stage理想结构 前文提到,基于SEDA的异步框架,一个stage的理想结构描述如下: 在这个框架的设想中,一个stage一般需要有如下几个组件: 1、D-MQ:分布式消息中间件。用做事件队列,以进行消息的传递。转载 2014-01-15 17:07:23 · 976 阅读 · 0 评论 -
memcached限制以及与reids的比较
一、memcached限制在分布式企业级应用中,memcached被广泛使用。但是关于它自身的一些限制需要我们了解:1、过期时间memcached的缓存策略为:失效时间 + LRU(最近最少使用)。其过期时间设置上限阈值为30天,若超过30天后,将获取不到存储的数据。2、数据稳定性memcached需要保证集群的内存空间足够大,否则内存满了之后,会采用LRU置换算法,将部分转载 2014-06-30 11:48:14 · 543 阅读 · 0 评论 -
分布式锁的三种实现方式
一、zookeeper1、实现原理:基于zookeeper瞬时有序节点实现的分布式锁,其主要逻辑如下(该图来自于IBM网站)。大致思想即为:每个客户端对某个功能加锁时,在zookeeper上的与该功能对应的指定节点的目录下,生成一个唯一的瞬时有序节点。判断是否获取锁的方式很简单,只需要判断有序节点中序号最小的一个。当释放锁的时候,只需将这个瞬时节点删除即可。同时,其可以避免服务宕机转载 2014-06-30 11:45:35 · 1865 阅读 · 0 评论