是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间经过网络实现进程间的通讯。应用程序能够经过网络共享内存进行消息传送,实现分布式计算机。linux
是一组连在一块儿的计算机,从外部看它是一个系统,各节点能够是不一样的操做系统或不一样硬件构成的计算机。如一个提供Web服务的集群,对外界来看是一个大Web服务器。不过集群的节点也能够单独提供服务。算法
集群中全部的节点都处于活动状态,它们分摊系统的工做负载。通常Web服务器集群、数据库集群和应用服务器集群都属于这种类型。数据库
负载均衡集群通常用于相应网络请求的网页服务器,数据库服务器。这种集群能够在接到请求时,检查接受请求较少,不繁忙的服务器,并把请求转到这些服务器上。从检查其余服务器状态这一点上看,负载均衡和容错集群很接近,不一样之处是数量上更多。apache
先从集群讲起tomcat
负载均衡又有DNS负载均衡(比较经常使用)、IP负载均衡、反向代理负载均衡等,也就是在集群中有服务器A、B、C,它们都是互不影响,互不相干的,任何一台的机器宕了,都不会影响其余机器的运行,当用户来一个请求,有负载均衡器的算法决定由哪台机器来处理,假如你的算法是采用round算法,有用户a、b、c,那么分别由服务器A、B、C来处理;服务器
经过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,能够为多个不一样的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时获得其中一个地址。所以,对于同一个名字,不一样的客户机会获得不一样的地址,他们也就访问不一样地址上的Web服务器,从而达到负载均衡的目的。网络
使用代理服务器能够将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不一样,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,所以也被称为反向代理模式。负载均衡
网络地址转换为在内部地址和外部地址之间进行转换,以便具有内部地址的计算机能访问外部网络,而当外部网络中的计算机访问地址转换网关拥有的某一外部地址时,地址转换网关能将其转发到一个映射的内部地址上。所以若是地址转换网关能将每一个链接均匀转换为不一样的内部服务器地址,此后外部网络中的计算机就各自与本身转换获得的地址上服务器进行通讯,从而达到负载分担的目的。分布式
而集群指的是将几台服务器集中在一块儿,实现同一业务。 分布式中的每个节点,均可以作集群。 而集群并不必定就是分布式的。性能
举例:就好比新浪网,访问的人多了,他能够作一个群集,前面放一个响应服务器,后面几台服务器完成同一业务,若是有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。
分布式,从窄意上理解,也跟集群差很少, 可是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器能够顶上来。 分布式的每个节点,都完成不一样的业务,一个节点垮了,哪这个业务就不可访问了。
在群集的这三种基本类型之间,常常会发生交叉、混合。好比:在高可用性的群集系统中也能够在其节点之间实现负载均衡,同时仍然维持着其高可用性。还有一种归纳性说法:cluster是手段,load banlance是目标之一。