小议计算机集群

来源:互联网 发布:软件开发工程师要求 编辑:程序博客网 时间:2024/06/03 04:52

  • 是什么

        提到集群我首先想到的是小小课本中《一把筷子》的寓言,这则寓言让我们看到了联合的力量。

        那么按照这种“联合”的思路我们可以把多个计算机“捆”起来,我们能就能得到一台“大CPU”、“大内存”、“大硬盘”、“大网卡”的“大计算机”,也就能去干“大活”。其实这就是计算机集群设计的初衷。

        2011年光棍节促销,京东商城网站的流量暴涨,服务器瘫痪。刘强东立即想到的就是对扩充集群,宣称增加3倍服务器。

  • 为什么

        这个问题提出时有朋友就问了,搞一台性能巨牛的机器不就完了,干嘛要如此麻烦。其实答案很简单,这样的机器太贵。

  • 干什么

        在长期的临床应用中,用户总结出了集群一系列的用途。

高性能计算

        一些计算密集型应用需要很强计算机有很强的运算能力,普通的单台机器就捉襟见肘了。如:在数值天气预报的模式运算时,会产生很多的计算量,普通的机器很难“养得起”这种 “吃”CPU程序,如果放到集群系统中计算,那大计算量就会被分割,耗时大大降低。像Matlab就提供在多核及集群计算机上的并行计算的工具箱。
        但上述的集群进行高性能计算也有限制,要求程序或算法要设计为可并行计算。如果算法必须为串行,那就只能花钱买强机了。

高并发访问

        一台服务器的并发数量是有限制的,那么海量并发应用就需要大集群来消化这些负载了。像淘宝的一些促销活动,12306的高峰期购票等都会产生瞬间海量并发,这对服务器带来的压力非常之大,控制不好就会发生文章开头的一幕。
        究其本质,决定并发能力的是硬件的CPU运算能力、硬盘读取速度、单台服务器带宽以及服务器软件的性能(如:数据库、Web Server)等。而不同类型的并发要求的负责对象也不同。如:视频点播和下载应用的压力在于带宽、在对淘宝或其他电商网站搜索时压力在于数据库、Web GIS中的插值GP服务压力在于CPU,那么我们就可以根据并发的类型来配置集群中的服务器。

容灾

        这是一个与性能无关的用途,是为了增强应用的抗风险能力。像一些电商、金融网站对抗风险能力要求极强,否则停机一小时就会带来百万的损失,甚至更坏。
        再好的机器也可能会开小差,那么把应用程序部署到多个机器上,其中一个宕掉不会影响到应用的使用。

       容灾机器的切换模式有:主-备方式和双主(多机)机方式,主-备方式即指的是一台服务器处于某种业务的激活状态,另一台服务器处于该业务的备用状态。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态。        

        在宕机路由方案上,有多种选择:

        首先可以采用DNS路由,当一个ip访问出问题时,自动切换到备用ip;这种方案的限制是必须使用域名为访问途径。这种方案最为简易,市面上有很多DNS解析服务商提供该服务,如DNSPod。

        其次可在集群外围架设诸如f5之类的硬负载均衡设备,来进行故障转移,这种方案是管理方便,但费用高。

        也可以使用操作系统的集群功能来进行此工作,如Windows  Server 2008自带的集群功能。

        应用软件自带的集群管理功能也是一种选择,如tomcat自身的集群功能。

        除了机器因素之外,还会发生一些天灾人祸。如:如影片《007之黄金眼》中008想利用太空武器炸毁伦敦来毁灭英国的金融记录……,如果当时伦敦政府采用多地集群部署金融系统的话008的举动就是一个笑柄。


原创粉丝点击