集群的重要性与必要性
<br />注:部分内容摘抄自章文嵩 博士的http://www.linuxvirtualserver.org/zh/lvs1.html<br /> <br /> <br /> <br />目前集群技术与相关软硬件产品都很多,但是本文不涉及具体的产品,简要介绍一下集群在企业应用中的重要性和必要性。<br /> <br /> <br /> <br />2010年的有统计数据说目前中国已有4亿多网民,
注:部分内容摘抄自章文嵩 博士的http://www.linuxvirtualserver.org/zh/lvs1.html
目前集群技术与相关软硬件产品都很多,但是本文不涉及具体的产品,简要介绍一下集群在企业应用中的重要性和必要性。
2010年的有统计数据说目前中国已有4亿多网民,web2.0的国内代表网站的用户数即将突破1亿,facebook的全球用户数已经超过6亿。
随着互联网用户的增多,现在的网站的用户数量早已不像当年,动辄上千万几亿的用户量给网站带来流量的同时,也给网站架构、运行维护带来了挑战。
网站为了持续发展,不管网站的内容如何丰富、创意如何有特色,为了保持用户的忠诚度、粘度,为用户提供稳定的、良好的使用感受是最基本的。
相信大部分网友都有过这样的经历,有时候访问一个网站打开一个网页要等几十秒甚至夸张的需要几分钟,绝大多数情况下我们的反应是关掉,访问其他网站或者从google上搜索其他相关的信息。
例如如果我们去新浪看新闻,但是打开很慢,太考验我们的耐心,我不知道其他人如何做,我会立马访问163、sohu等门户替代。如果新浪经常很慢的话,我以后看新闻第一选择就绝对不会是新浪了
又例如我们去开心网玩玩抢车位、偷菜等,如果开心网服务不稳定,有过几次无法登录,相信开心网的竞争对手会很开心,因为这会导致很多的开心网用户流失到他们那里。
再来看一组数字,paypal 09年出现故障,造成全球性停止服务1个小时,据悉损失高达700万美元。
淘宝网在2009年9月一个工作日的销售数据:
781,922件家居用品、656,648篇服装和化妆品内容的文章、496,807件珠宝首饰、
138,245件小家电用品、113,769部电话和笔记本电脑。淘宝网那天销售了4,561,000
件商品,处理了64,808笔交易。如果淘宝网停止服务1个小时,损失至少200万美元。
所以对于大型网站来说,如果保证服务的相应速度、如何提供不间断的服务、如何快速进行故障恢复是至关重要的。
大型网站的需求总结:
1、高可用 :
即能提供7*24 365天不间断的服务,出现硬件故障能够不影响网站的运行。
2、可伸缩性:
对于持续增加的用户,可以通过简单、易于维护的架构进行扩展,整个过程应是简易的,安全的。
通过服务器集群可以实现可伸缩的、高可用网络服务的有效结构。这种松耦合结构的服务器集群系统有下列优点:
-
性能
网络服务的工作负载通常是大量相互独立的任务,通过一组服务器分而治之,可以获得很高的整体性能。 -
性能/价格比
组成集群系统的PC服务器或RISC服务器和标准网络设备因为大规模生产降低成本,价格低,具有最高的性能/价格比。若整体性能随着结点数的增长而接近线性增加,该系统的性能/价格比接近于PC服务器。所以,这种松耦合结构比紧耦合的多处理器系统具有更好的性能/价格比。 -
可伸缩性
集群系统中的结点数目可以增长到几千个,乃至上万个,其伸缩性远超过单台超级计算机。 -
高可用性
在硬件和软件上都有冗余,通过检测软硬件的故障,将故障屏蔽,由存活结点提供服务,可实现高可用性。
当然,用服务器集群系统实现可伸缩网络服务也存在很多挑战性的工作:
-
透明性(Transparency)
如何高效地使得由多个独立计算机组成的松藕合的集群系统构成一个虚拟服务器;客户端应用程序与集群系统交互时,就像与一台高性能、高可用的服务器交互一样,客户端无须作任何修改。部分服务器的切入和切出不会中断服务,这对用户也是透明的。 -
性能(Performance)
性能要接近线性加速,这需要设计很好的软硬件的体系结构,消除系统可能存在的瓶颈。将负载较均衡地调度到各台服务器上。 -
高可用性(Availability)
需要设计和实现很好的系统资源和故障的监测和处理系统。当发现一个模块失败时,要这模块上提供的服务迁移到其他模块上。在理想状况下,这种迁移是即时的、自动的。 -
可管理性(Manageability)
要使集群系统变得易管理,就像管理一个单一映像系统一样。在理想状况下,软硬件模块的插入能做到即插即用(Plug & Play)。 -
可编程性(Programmability)
在集群系统上,容易开发应用程序
参考文档: http://www.linuxvirtualserver.org/zh/lvs1.html
更多推荐
所有评论(0)