13046685510

分布式与集群的区别

集群和分布式,实际上是两个截然不同的概念。


集群


一个业务,部署在多台服务器上,这就是集群。这里的一个业务,可以直接看做一个程序包。


◆ 举个例子


公司开发了一个网上商城,类似于T宝,顾客可以在上面浏览商品、加入购物车、支付,完成整个的购物流程。


公司买了一台服务器,把这套程序部署上去,可以满足一千个人同时在线购物。


当顾客越来越多,服务器负载越来越高,商城的页面也越来越卡,这时候公司再买几台服务器,把商城的程序在每个服务器上都部署一套,由负载均衡将请求转发到各个服务器上,这就是集群。

分布式与集群的区别(图1)


分布式


把一个业务,拆分成多个业务,然后部署到不同的服务器上,这就是分布式。


◆ 再举个例子


公司的网上商城,拆分成两个系统:商品系统和支付系统,用户在商品系统上完成浏览商品、加入购物车的动作,在支付系统上完成支付动作(当然用户是无法感知到是在两个系统上完成的操作),这就是分布式。


当然,还能继续拆,例如拆出来:用户系统、积分系统、物流系统等等等等。

分布式与集群的区别(图2)


◆ 分布式的好处


领导说,我们再做一个二手交易平台,类似于X鱼,这时候用户系统、支付系统就可以复用了,做到了服务复用。


分布式 + 集群


分布式和集群通常是是结合在一起使用的;


比如商品系统部署两台,支付系统部署两台,前面各自挂负载均衡,这样就算有单个服务器 Down 掉,也不会对整个业务流程造成影响。

分布式与集群的区别(图3)


还有另外一种方案,可以不依赖于负载均衡,那就是采用 服务注册/发现 的方式:

分布式与集群的区别(图4)


总之,集群部署很容易实现,当单机不能满足业务需要时,可以采用集群部署,至于要不要做分布式,业务拆分到什么粒度,就要结合公司的实际情况来决定了。

7x24小时服务专线 130-4668-5510
官方微信 关闭