分布式与集群的区别、负载均衡

1.1 什么是集群

1.1.1集群概念

集群是一个计算机系统,它通过一组松散集成的计算机软件/或硬件连接起来高度紧密的协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式。集群计算机通常用来改进单个计算机的计算速度和可靠性。一般情况下集群计算机比单个计算机,比如工作站或超级计算机性价比要高的多。

分布式与集群的区别、负载均衡

1.1.2 集群的特点

可扩展性:集群的性能不限于单一的服务实体,新的服务实体可以动态的添加到集群,从而增强集群的性能。

高可用性:集群当中一个节点发生故障时,这台节点上面所运行的应用程序将在另一个节点被自动接管,消除单点故障对于增强数据可用性、可达性和可靠性是非常重要的。

1.1.3 集群的两大能力

负载均衡:负载均衡把任务比较均匀的分布到集群环境下的计算和网络资源,以提高数据的吞吐量。

错误恢复:如果集群中某一个服务器由于故障或者维护需要无法使用,资源和应用程序将转移到可用的集群点上。这种由于某个节点的资源不能正常工作,另一个可用节点中的资源能够透明的接管并继续完成任务的过程,叫做错误恢复。

负载均衡和错误恢复要求各服务实体中有执行同一任务的资源存在,而且对于同一任务的各个资源来说,执行任务所需的信息视图必须是相同的。

1.2 集群与分布式的区别

相同点:分布式和集群都需要很多节点服务器通过网络协同工作完成整体的任务目标。

不同点:分布式是指将业务系统进行拆分,即分布式的每一个节点都是实现不同的功能。而集群每个节点做的是同一件事情。

如下图,每个人都有不同的分工,一起协作干一件事情,叫做“分布式”。

分布式与集群的区别、负载均衡

再看下图,每个划桨人干的都是一样的活,叫做集群,

分布式与集群的区别、负载均衡

分布式的每一个节点也可以做成集群。其实这个赛龙舟的图,总整体来看属于分布式,包括打鼓和划桨两个分布式节点,而划桨的节点又是集群的形态。

现实生活中例子还有很多,例如,这样古代乐队的图就属于集群:

分布式与集群的区别、负载均衡

而现代乐队这样的图就属于分布式:

分布式与集群的区别、负载均衡