原始服务
集群:
集群就是同一个子业务系统复制成多份,将其分别部署在多台服务器上,这多台服务器将其安装在同一个位置的物理空间之内,形成一个集合的群体,就叫做集群。集群是用来提高应用性能,在高并发场景下,让系统可以达到高吞吐量和高可用性;
分布式:
分布式就是将一个复杂的业务系统,拆分成多个子业务系统,将其部署在每个不同的服务器上面,通过网络将其连接起来,通过交换信息协作共同完成一个业务。
分布式+集群:
分布式和集群区别:
-
分布式是指将不同的业务分布到不同的地方。
-
而集群是指将几台服务器集中在一起,实在同一个业务。
-
分布式的每一个节点,都可以用来做集群。而集群不一定就是分布式了
总结:
系统和架构绝对不应该把分布式和集群进行割裂开来,而应该是两者进行有机的结合和组合。要想让我们的系统实现,高性能,高可用,高吞吐,那么我们从架构和部署层面来讲就应该先分布式(拆分),然后将每个节点采用集群的方式进行部署,这样就可以大大提高系统的整体性能和健壮性。
简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。
例如:如果一个任务由 10 个子任务组成,每个子任务单独执行需 1 小时,则在一台服务器上执行该任务需 10 小时。
采用分布式方案,提供 10 台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需1个小时。
单机环境下,1个服务器只能处理一个任务,10个任务就是10个小时,但是我们如果采用集群的方案,部署10台服务器,1台服务器分别处理一个任务,那么1个小时就可以处理完成这10个任务,这就是效率的提高。