转:集群和分布式的区别

转自: https://blog.csdn.net/shuaipu813/article/details/52083289

 

集群

多台服务器组成的一组计算机,作为一个整体存在,向用户提供一组网络资源,这些单个的服务器就是集群的节点。

集群拥有以下两个特点:

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

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

集群必须拥有以下两大能力:

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

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

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

分布式与集群的联系和区别

1.   分布式是指将不同的业务分布到不同的地方。(分布式节点做不同的事情,但单个业务的分布式节点可以通过集群多个机器来实现)

2.   而集群是指将几台服务器集中在一起,实在同一个业务。(集群节点做相同的事情,但集群无法通过分布式来实现)

3.   分布式的每一个节点,都可以用来做集群。而集群不一定就是分布式了

例如:互联网上访问的人多了,就可以做一个集群,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将任务交给哪台去完成。

而分布式,从狭义上理解,也与集群差不多,但是它的组织比较松散,不像集群,有一定组织性,一台服务器宕了,其他的服务器可以顶上来。分布式的每一个节点,都完成不同的业务,一个节点宕了,这个业务就不可访问了。

 

你可能感兴趣的:(软件架构)