Web集群是由多个同时运行同一个web应用的服务器组成,在外界看来就像一个服务器同样,这多台服务器共同来为客户提供更高性能的服务。集群更标准的定义是:一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理,此单一系统为客户工做站提供高可靠性的服务。
而负载均衡的任务就是负责多个服务器之间(集群内)实现合理的任务分配,使这些服务器(集群)不会出现因某一台超负荷、而其余的服务器却没有充分发挥处理能力的状况。负载均衡有两个方面的含义:首先,把大量的并发访问或数据流量分担到多台节点上分别处理,减小用户等待响应的时间;其次,单个高负载的运算分担到多台节点上作并行处理,每一个节点设备处理结束后,将结果汇总,再返回给用户,使得信息系统处理能力能够获得大幅度提升
所以能够看出,集群和负载均衡有本质上的不一样,它们是解决两方面问题的不一样方案,不要混淆。
集群技术能够分为三大类:
一、高性能性集群(HPC Cluster)
二、高可用性集群(HA Cluster)
三、高可扩展性集群
1、高性能性集群(HPC Cluster)
指以提升科学计算能力为目标的集群技术。该集群技术主要用于科学计算,这里不打算介绍,若是感兴趣能够参考相关的资料。
2、高可用性集群(HA Cluster)
指为了使群集的总体服务尽量可用,减小服务宕机时间为目的的集群技术。若是高可用性集群中的某节点发生了故障,那么这段时间内将由其余节点代替它的工做。固然对于其余节点来说,负载相应的就增长了。
为了提升整个系统的可用性,除了提升计算机各个部件的可靠性之外,通常状况下都会采用该集群的方案。
对于该集群方案,通常会有两种工做方式:
①主-主(Active-Active)工做方式
这是最经常使用的集群模型,它提供了高可用性,而且在只有一个节点时也能提供能够接受的性能,该模型容许最大程度的利用硬件资源。每一个节点都经过网络对客户机提供资源,每一个节点的容量被定义好,使得性能达到最优,而且每一个节点均可以在故障转移时临时接管另外一个节点的工做。全部的服务在故障转移后仍保持可用,可是性能一般都会降低。
mysql
这是目前运用最为普遍的双节点双应用的Active/Active模式。web
支撑用户业务的应用程序在正常状态下分别在两台节点上运行,各自有本身的资源,好比IP地址、磁盘阵列上的卷或者文件系统。当某一方的系统或者资源出现故障时,就会将应用和相关资源切换到对方的节点上。算法
这种模式的最大优势是不会有服务器的“闲置”,两台服务器在正常状况下都在工做。但若是有故障发生致使切换,应用将放在同一台服务器上运行,因为服务器的处理能力有可能不能同时知足数据库和应用程序的峰值要求,这将会出现处理能力不够的状况,下降业务响应水平。sql
②主-从(Active-Standby)工做方式
为了提供最大的可用性,以及对性能最小的影响,主-从工做方式须要一个在正常工做时处于备用状态的节点,主节点处理客户机的请求,而备用节点处于空闲状态,当主节点出现故障时,备用节点会接管主节点的工做,继续为客户机提供服务,而且不会有任何性能上影响。
数据库
两节点的Active/Standby模式是HA中最简单的一种,两台服务器经过双心跳线路组成一个集群。应用Application联合各个可选的系统组件如:外置共享的磁盘阵列、文件系统和浮动IP地址等组成业务运行环境。服务器
PCL为此环境提供了彻底冗余的服务器配置。这种模式的优缺点:网络
3、高可扩展性集群
这里指带有负载均衡策略(算法)的服务器群集技术。带负载均衡集群为企业需求提供了更实用的方案,它使负载能够在计算机集群中尽量平均地分摊处理。而须要均衡的多是应用程序处理负载或是网络流量负载。该方案很是适合于运行同一组应用程序的节点。每一个节点均可以处理一部分负载,而且能够在节点之间动态分配负载, 以实现平衡。对于网络流量也是如此。一般,单个节点对于太大的网络流量没法迅速处理,这就须要将流量发送给在其它节点。还能够根据每一个节点上不一样的可用资源或网络的特殊环境来进行优化。
负载均衡集群在多节点之间按照必定的策略(算法)分发网络或计算处理负载。负载均衡创建在现有网络结构之上,它提供了一种廉价有效的方法来扩展服务器带宽,增长吞吐量,提升数据处理能力,同时又能够避免单点故障。并发