之间上过云计算和大数据相关的课程,那时候就集群、分布式傻傻分不清,最近在慕课网学习消息中间件,就想好好整理一下他们之间的关系,以及使用的情景。
本篇文章主要参考自分布式、中间件和消息队列、集群和分布式与集群的区别是什么?
一、单机结构
相信大家最常见的就是单机结构的系统了,比如大学里的大作业,虽然不一定部署到服务器上,但所有的业务功能全部放在一起,一台机器解决所有问题,这就是所谓的单机结构。
如果业务全部部署到一个服务器,访问的人数一多,或者业务功能继续增长,就容易导致服务器响应的时间越来越长,甚至阻塞,简单来说,
一个超市就是一个服务器,一个人是一个请求,某天超市大优惠,无数人想挤进来,然而只有一个门,许多人只能挤在门口,半天进不去。
此时,很容易就想到,多开几个门 另外开几个超市,然后集群就出现了。(本来想用多开几个门做比喻的,但好像是多开几个超市比较合适??)
二、集群
集群:同一个业务,部署在多台服务器上,这个就叫做集群。
实际上就是将单机结构上的业务,拷贝到多台服务器上,这样每个服务器被称为 “ 节点 ” ,这样就能允许更多人向服务器发送请求,允许的最大值是一台服务器的好几倍,(有几台服务器就有多少倍)。
当然,如果等一台服务器满了才将请求转移到另一台服务器,这样会让第一台总是承担最大压力,会导致业务处理速度效率很低,因此我们单独需要一台服务器进行负载均衡