分布式开发
文章平均质量分 77
iteye_5555
这个作者很懒,什么都没留下…
展开
-
Comet技术在集群环境下的问题
学会了Comet技术,笔者确实兴奋了一段时间,但是真正的项目中的应用的时候出现了新的问题: 如图所示,Browser1和Server1建立了长连接,当Server1上有新的更新时,可以push到browser1.Browser2和Server2建立了长连接,当Server2上有新的更新时,可以push到browser2. 问题出来了,当有这样的需求时:Server2的数...原创 2010-09-23 22:30:25 · 134 阅读 · 0 评论 -
Tomcat 开发Comet实例
1.Tomcat6&Comet的简要介绍 Comet技术的悄然流行,Jetty在比较早地支持了Comet,提供了Comet 的Servlet,同样从Tomcat6开始,Comet已经在Tomcat的标准Servlet中开始支持了,这是个好事情,毕竟我们有越来越多的选择了。 可喜的是Comet技术,已经定义在Servlet3.0规范中,到时候,我们代码的移植性更好了。...原创 2010-06-04 16:55:48 · 140 阅读 · 0 评论 -
负载均衡技术全攻略(转)
1.负载均衡背景 Internet的规模每一百天就会增长一倍,客户希望获得7天24小时的不间断可用性及较快的系统反应时间,而不愿屡次看到某个站点“ServerToo Busy”及频繁的系统故障。 网络的各个核心部分随着业务量的提高、访问量和数据流量的快速增长,其处理能力和计算强度也相应增大,使得单一设备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样...原创 2010-06-02 17:05:05 · 140 阅读 · 0 评论 -
解决Apache的单点问题解决方案之一----------DNS负载均衡技术
1.需求的提出我们现在有个系统,由于采用的是HTTP进行文件的播放(直接播放存放在Apache server上的文件),如果采用Apache或者其它web server,会存在单点问题,一台apache的长连接的数量毕竟有限,如何让多个apache同时工作提供服务,首先我想到了DNS的负载均衡技术。 2.DNS负载均衡技术的原理 负载均衡技术能够平衡服务器集群中所有的...原创 2010-06-02 12:44:09 · 206 阅读 · 0 评论 -
MemCached的内存管理机制
MemCached使用了有优化的内存管理方式,使得对象的内存分配效率有很大程度上的提高。 1.传统的内存管理方式的缺点传统的内存分配使用mallocate方法向OS申请内存,内存不再使用时,使用free方法,释放内存给OS。这种方式简单,但是有以下缺点:1.频繁的跟OS打交道,增加了OS的工作2.容易产生内存碎片。当内存不再使用free内存给操作系统,当分配的对象很...原创 2010-05-29 23:21:12 · 113 阅读 · 0 评论 -
MemCached的分布式算法
在MemCached的基础里面,我们讲到MemCached是一个重要特征是它是利用客户端的计算来达到分布式效果的。1.Cache的分类根据缓存与应用的耦合程度将其划分为local cache和remote cache(来自于ahuaxuan的分类方式)。 local cache表示缓存的数据和应用程序在同一个JVM内,remote cache表示缓存数据在远程server上...原创 2010-05-20 22:39:28 · 171 阅读 · 0 评论 -
在linux下安装MemCached
MemCached是采用libevent来进行网络连接的并发处理,能够保持高并发情况下,依然能够保持快速的响应能力。 因此安装要分两部分: 1.安装libevent Step 1:下载http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gzStep 2:[root@ls-dev01 local]#...原创 2010-05-20 15:56:14 · 58 阅读 · 0 评论 -
Twitter学习-MemCached基础篇
Twitter大量使用Memcached,MQ也是基于Memcached 协议的,Memcached并不是新鲜的东西,但是由于它强大的影响力,有必要深入一下,这篇主要讲它的基础: 1.Memcached是什么?Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据 库驱动网...原创 2010-05-18 16:37:46 · 103 阅读 · 0 评论 -
Pushlet的第一个实例-聊天室
笔者为了体验Pushlet的原理,做了一个聊天室程序,聊天功能对于每个user来说有两个基本功能: 1.发布聊天记录对于Pushlet来说,是把这个聊天记录clone放到每个subscriber对应的EventQueue中使用Pushlet提供的publish函数,来完成功能 2.接收别人新的聊天记录线程轮询EventQueue,取出数据update browser客户...原创 2010-05-13 22:18:44 · 93 阅读 · 0 评论 -
Pushlet的工作原理
在介绍comet的基本理论之后,pushlet是comet的一种实现,它主要利用Servlet容器(Tomcat和Jetty)在Servlet没有运行完毕(线程一直没有运行完毕),server不会主动关闭连接,这给web的进行长连接由server push data 到client端提供了基本的理论依据。 注:本文在修改之前说的Com是利用keep-alive功能,server不会主动关闭...原创 2010-05-06 22:20:28 · 233 阅读 · 0 评论 -
Twitter框架学习二Http长连接技术实现server端push功能-Comet的理论与实战
Comet简介在学习Twitter的架构中,发现他们广泛使用了Comet技术,基于Http长连接的服务器Push技术,Twitter本身对于数据的实时性要求较高,因此,采用Comet技术可以很好地解决他们的问题。 Comet 是一种新的 Web 应用架构。基于这种架构开发的应用中,服务器端会主动以异步的方式向客户端程序推送数据,而不需要客户端显式的发出请求。Comet 架构...2010-04-29 15:19:38 · 436 阅读 · 0 评论 -
Twitter的架构学习一:Twitter简介和业务逻辑简述
1.Twitter的简介 Twitter是非常著名的微博客网站,成立于2006年,至今用户数已经超过1000w,在奥巴马总统上台后,用户量急剧增长,随着用户数量的增加,Twitter的架构也发生了很大的变化,它的这些变化能够适应大用户量的访问,是值得大家学习的一种架构。 2.Twitter的业务介绍1)业务Twitter的业务比较简单,用户可以写短信(字长不允许超过...2010-04-28 16:06:46 · 649 阅读 · 0 评论 -
Google File System原理篇
前言 对于大型系统的开发与设计,是非常有意思的事情,也是笔者觉得编程的最有成就感的事情,对于分布式开发和设计,笔者一直想学习,并且使用一些技术并应用在项目中,而研究一些好的论文和设计,对于分布式系统的开发和设计有非常非常重要的作用。 首先想到了Google,GFS的设计应该是非常精巧的,可惜并没有开放源代码,而Hadoop的HDSF就是基于GFS而进行开发的,还好Hadoop是...2010-04-22 21:51:09 · 134 阅读 · 0 评论 -
探索GFS文件追加模式
Google File System里面有一小节关于文件追加模式是原子操作,笔者不得其解: l例如现在有两个独立的进程A和B同时append 数据到一个文件里,添加文件必须收lseek文件的末尾的位置,找准位置后才能添加数据:首先进程A,seek到位置1500byte的位置是文件的末尾同时进程B,也seek到1500byte第三,进程B写入100byte的数据,此时文件末尾变成...2010-07-29 22:33:55 · 503 阅读 · 0 评论