数据库集群的介绍
集群主要分成三大类 (高可用集群, 负载均衡集群,科学计算集群)
高可用集群( High Availability Cluster)
负载均衡集群(Load Balance Cluster)
科学计算集群(High Performance Computing Cluster)
1、高可用集群(High Availability Cluster)
常见的就是2个节点做成的HA集群,有很多通俗的不科学的名称,比如”双机热备”, “双机互备”, “双机”。高可用集群解决的是保障用户的应用程序持续对外提供服务的能力。 (请注意高可用集群既不是用来保护业务数据的,保护的是用户的业务程序对外不间断提供服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度)。
2、负载均衡集群(Load Balance Cluster)
负载均衡系统:集群中所有的节点都处于活动状态,它们分摊系统的工作负载。一般Web服务器集群、数据库集群和应用服务器集群都属于这种类型。
负载均衡集群一般用于相应网络请求的网页服务器,数据库服务器。这种集群可以在接到请求时,检查接受请求较少,不繁忙的服务器,并把请求转到这些服务器上。从检查其他服务器状态这一点上看,负载均衡和容错集群很接近,不同之处是数量上更多。
3、科学计算集群(High Performance Computing Cluster)
高性能计算(High Perfermance Computing)集群,简称HPC集群。这类集群致力于提供单个计算机所不能提供的强大的计算能力。
高性能计算分类:
31、高吞吐计算(High-throughput Computing)
有一类高性能计算,可以把它分成若干可以并行的子任务,而且各个子任务彼此间没有什么关联。象在家搜寻外星人( SETI@HOME – Search for Extraterrestrial Intelligence at Home )就是这一类型应用。
这一项目是利用Internet上的闲置的计算资源来搜寻外星人。SETI项目的服务器将一组数据和数据模式发给Internet上参加SETI的计算节点,计算节点在给定的数据上用给定的模式进行搜索,然后将搜索的结果发给服务器。服务器负责将从各个计算节点返回的数据汇集成完整的 数据。因为这种类型应用的一个共同特征是在海量数据上搜索某些模式,所以把这类计算称为高吞吐计算。
所谓的Internet计算都属于这一类。按照 Flynn的分类,高吞吐计算属于SIMD(Single Instruction/Multiple Data)的范畴。
32、分布计算(Distributed Computing)
另一类计算刚好和高吞吐计算相反,它们虽然可以给分成若干并行的子任务,但是子任务间联系很紧密,需要大量的数据交换。按照Flynn的分类,分布式的高性能计算属于MIMD(Multiple Instruction/Multiple Data)的范畴。
下面说说这几种集群的应用场景:
高可用集群这里不多作说明。
想Dubbo是比较偏向于负载均衡集群,用过的猿友应该知道(不知道的可以自行了解一下),Dubbo同一个服务是可以有多个提供者的,当一个消费者过来,它要消费那个提供者,这里是有负载均衡机制在里面的。
搜索引擎Elasticsearch比较偏向于科学计算集群的分布计算。
而到这里,可能不少猿友都知道,集群的一些术语:集群容错、负载均衡。
我们以Dubbo为例:
集群容错(http://dubboio/User+Guide-zhhtm#UserGuide-zh-%E9%9B%86%E7%BE%A4%E5%AE%B9%E9%94%99)
Dubbo提供了这些容错策略:
集群容错模式:
可以自行扩展集群容错策略,参见:集群扩展
Failover Cluster
失败自动切换,当出现失败,重试其它服务器。(缺省)
通常用于读操作,但重试会带来更长延迟。
可通过retries="2"来设置重试次数(不含第一次)。
Failfast Cluster
快速失败,只发起一次调用,失败立即报错。
通常用于非幂等性的写操作,比如新增记录。
Failsafe Cluster
失败安全,出现异常时,直接忽略。
通常用于写入审计日志等操作。
Failback Cluster
失败自动恢复,后台记录失败请求,定时重发。
通常用于消息通知操作。
Forking Cluster
并行调用多个服务器,只要一个成功即返回。
通常用于实时性要求较高的读操作,但需要浪费更多服务资源。
可通过forks="2"来设置最大并行数。
Broadcast Cluster
广播调用所有提供者,逐个调用,任意一台报错则报错。(210开始支持)
通常用于通知所有提供者更新缓存或日志等本地资源信息。
负载均衡(http://dubboio/User+Guide-zhhtm#UserGuide-zh-%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1)
Dubbo提供了这些负载均衡策略:
Random LoadBalance
随机,按权重设置随机概率。
在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。
RoundRobin LoadBalance
轮循,按公约后的权重设置轮循比率。
存在慢的提供者累积请求问题,比如:第二台机器很慢,但没挂,当请求调到第二台时就卡在那,久而久之,所有请求都卡在调到第二台上。
LeastActive LoadBalance
最少活跃调用数,相同活跃数的随机,活跃数指调用前后计数差。
使慢的提供者收到更少请求,因为越慢的提供者的调用前后计数差会越大。
ConsistentHash LoadBalance
一致性Hash,相同参数的请求总是发到同一提供者。
当某一台提供者挂时,原本发往该提供者的请求,基于虚拟节点,平摊到其它提供者,不会引起剧烈变动。
算法参见:http://enwikipediaorg/wiki/Consistent_hashing。
缺省只对第一个参数Hash,如果要修改,请配置<dubbo:parameter key="hasharguments" value="0,1" />
缺省用160份虚拟节点,如果要修改,请配置<dubbo:parameter key="hashnodes" value="320" />
高性能计算(High Performance Computing)机群,简称HPC机群。构建高性能计算系统的主要目的就是提高运算速度,要达到每秒万亿次级的计算速度,对系统的处理器、内存带宽、运算方式、系统I/O、存储等方面的要求都十分高,这其中的每一个环节都将直接影响到系统的运算速度。这类机群主要解决大规模科学问题的计算和海量数据的处理,如科学研究、气象预报、计算模拟、军事研究、CFD/CAE、生物制药、基因测序、图像处理等等。
信息服务机群的应用范围很广,包括如数据中心、电子政务、电子图书馆、大中型网站、网络游戏、金融电信服务、城域网/校园网、大型邮件系统、VOD、管理信息系统等等。就其实现方式上分,还可以分为负载均衡机群、高可用机群等。
简单的说,高性能计算(High Performance Computing)是计算机科学的一个分支,研究并行算法和开发相关软件,致力于开发高性能计算机(High Performance Computer)。
随着信息化社会的飞速发展,人类对信息处理能力的要求越来越高,不仅石油勘探、气象预报、航天国防、科学研究等需求高性能计算机,而金融、政府信息化、教育、企业、网络游戏等更广泛的领域对高性能计算的需求迅猛增长。
集群分为下面几种 高性能计算集群依赖于并行处理系统,所以高性能计算集群信息需要快速的传入与传出内存。高性能计算集群系统往往是I/O密集型的,因此高性能计算集群选择正确的内存配置,可以显著提升高性能计算集群应用程序性能。
高性能计算集群系统依赖于DIMM模块,因为高性能计算集群是针对并行系统设计的。
高性能计算集群有三种DIMM内存可用:UDIMM内存、RDIMM内存和LRDIMM内存。高性能计算集群在处理较大型工作负载时,无缓冲DIMM速度快、廉价但不稳定。寄存器式DIMM内存稳定、扩展性好、昂贵,高性能计算集群对内存控制器的电气压力小。高性能计算集群同样在许多传统服务器上使用。降载DIMM内存是寄存器式内存的替代品,高性能计算集群能提供高内存速度,降低服务器内存总线的负载,而且功耗更低。 高性能计算集群应用程序正在迅速增长,所以高性能计算集群体系未来的扩展能力需要重视。
高性能计算集群系统设计与传统数据中心基础设施设计的一大区别就是选择现成工具或定制系统。现成的高性能计算集群只能在很小的范围内进行扩展,高性能计算集群限制了未来增长。HPC定制可以保持一个开放式的设计,让企业在将来获得更好的扩展功能。然而,高性能计算集群额外的功能对于定制系统来说是一笔不小的代价,比购买现成高性能计算集群系统要高得多。 高性能计算集群系统初次上线时,高性能计算集群所有的配置都很完美,但随着时间流逝,高性能计算集群配置会变得不一致。
高性能计算集群中出现不一致,高性能计算集群管理员可能会看到一些零星的异常货变化,高性能计算集群影响应用程序性能。考虑到潜在的性能,IT部门需要实施策略来确认高性能计算集群系统中都运行着什么应用程序, 并想办法让高性能计算集群配置同步。这些高性能计算集群检查每季度应该进行,或者每年不少于两次。 高性能计算集群在过去15年中,高性能计算集群能源成本随着高性能计算密度增加而急剧上升。现在高性能计算集群普通的服务器开销为每机柜30kw,高性能计算集群这个数字还在不断上升。由于高性能计算集群高密度,高性能计算集群高效率数据中架构基础设施与高性能计算集群冷却系统变得至关重要。
在高性能计算集群数据中心,高性能计算集群高电压电直接供给到机架,而不是采用传统的208伏降压,这样可以节约电子电力设备因电力转换的损耗。高性能计算集群利用节能型泵取代了嘈杂、低效率的风扇。
0条评论