nasus

V1

2022/05/15阅读:33主题:自定义主题1

实习生:分布式和集群的区别是什么?

哈喽,小伙伴们好呀。我是狗哥,最近在带实习生,发现他对分布式和集群的概念有些混淆,今天分享一篇文章,好好来理解一下!

01 什么是分布式?

分布式系统一定是由多个节点组成的系统。

其中,节点指的是计算机服务器,而且这些节点一般不是孤立的,而是互通的。

这些连通的节点上部署了我们的节点,并且相互的操作会有协同。

分布式系统对于用户而言,他们面对的就是一个服务器,提供用户需要的服务而已,

而实际上这些服务是通过背后的众多服务器组成的一个分布式系统,因此分布式系统看起来像是一个超级计算机一样。

02 分布式与集群的区别?

2.1 集群

集群是指在几个服务器上部署相同的应用程序来分担客户端的请求。

它是同一个系统部署在不同的服务器上,比如一个登陆系统部署在不同的服务器上。

好比 多个人一起做同样的事。

集群主要的使用场景是为了分担请求的压力。

但是,当压力进一步增大的时候,可能在需要存储的部分,比如mysql无法面对大量的“写压力”。

因为在mysql做成集群之后,主要的写压力还是在master的机器上,其他slave机器无法分担写压力,这时,就引出了“分布式”。

2.2 分布式

分布式是指多个系统协同合作完成一个特定任务的系统。

它是不同的系统部署在不同的服务器上,服务器之间相互调用。

好比 多个人一起做不同的事。

分布式是解决中心化管理的问题,把所有的任务叠加到一个节点处理,太慢了。

所以把一个大问题拆分为多个小问题,并分别解决,最终协同合作。

分布式的主要工作是分解任务,把职能拆解。

分布式的主要应用场景是单台机器已经无法满足这种性能的要求,必须要融合多个节点,并且节点之间的相关部分是有交互的。

相当于在写mysql的时候,每个节点存储部分数据(分库分表),这就是分布式存储的由来。

存储一些非结构化数据:静态文件、图片、pdf、小视频 ... 这些也是分布式文件系统的由来。

03 用生活中的例子,来说明集群和分布式及其区别:

小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。

后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师炒一样的菜,这两个厨师的关系是集群。

为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分布式,

一个配菜师也忙不过来了,又请了个配菜师,两个配菜师关系是集群。

04 最后,再深入理解一下集群和分布式及其区别:

  • 分布式:把一个大业务拆分成多个子业务,每个子业务都是一套独立的系统,子业务之间相互协作最终完成整体的大业务。
  • 集群:把处理同一个业务的系统部署多个节点 。 把一套系统拆分成不同的子系统部署在不同服务器上,这叫分布式。

把多个相同的系统部署在不同的服务器上,这叫集群。部署在不同服务器上的相同系统必然要做“负载均衡”。

集群主要是简单加机器解决问题,对于问题本身不做任何分解。

分布式处理里必然涉及任务分解与答案归并。分布式中的某个子任务节点,可以是一个集群,该集群中的任一节点都作为一个完整的任务出现。

集群和分布式都是由多个节点组成,但集群中各节点间基本不需要通信协调,而分布式中各个节点的通信协调是必不可少的。

05 来源

  • blog.csdn.net/weixin_42046751

06 IDEA 激活

最近官方也出了最新版的 IDEA 2022.1 版本,更新内容非常多。有需要激活的小伙伴可以点击阅读原文也可以复制下面的链接到浏览器直接访问

  • https://www.javafish.top/articles/2022/05/04/1651664916320.html

07 大厂面试题 & 电子书

如果看到这里,喜欢这篇文章的话,请帮点个好看,一键三连哦。

初次见面,也不知道送你们啥。干脆就送几百本电子书2022 最新面试资料。微信搜索 JavaFish 回复 电子书 送你 1000+ 本编程电子书;回复 面试 送点面试题;回复 1024 送你一套完整的 java 视频教程。

面试题都是有答案的,详细如下所示:有需要的就来拿吧,绝对免费,无套路获取。

分类:

后端

标签:

后端

作者介绍

nasus
V1

微信公众号:JavaFish