分布式系统中,存在着三组非常重要的概念:节点,网络,存储。

下面我们来从书上说的先来理解一下:

节点:系统中通过一定的协议完成相应的计算的功能的一台机器或者一个进程等等。

网络:通信通道。

存储:系统需要持久化的数据以及一些维护系统正常运作的元数据信息等。

举个例子:

古村落需要交纳税款:

分布式系统就好比是一个古村落,村子中每个人都过着安逸祥和的生活。那么每个家庭就相当于是一个节点。每个家庭都会生孩子,但是家庭不能太多人员居住,因为家庭太大就会不好运转。当家庭中的成员过多的时候,也就是家不能承受如此的重负的时候,分家就是必然的结果。分家也就是新的节点产生的时机。

每个家庭都会有自己的房屋,都会有自己的耕地,这些我们称之为财产。每一个家庭对应一个自己的财产,这些财产就标志着这家人目前的生活状态。若是出村(宕机)一段时间再回来,依然能够继续按照之前的生活状态继续生活。这些财产就象征着需要被存储的信息或者节点元数据信息。

再有,在每个家庭的生活中,难免会有自己家里不能解决的事情。遇到自己不能够解决的事情的时候,需要向外界求助,自己的邻里亲朋。这就需要能够与邻里之间达成正常的交流。这些交流就需要网络来达成每个节点的交流情况。

节点还会有不同的角色,比如说有些村民自然要被推选出来当医生,有些村民则需要当教员,不同的村民家中的财产各不相同。医生家中要常备草药,教员家中少不了书籍,农夫家中少不了农具。

最终的目标是要整个村子缴纳税款,至于怎么能够正常的缴纳出合格的税款,村子内部自己决定就好了。

其实计算机内的一系列解决问题的方法,都可以从现实生活中找到缩影。我们不生产解决方案,我们是生活的搬运工。

09-10 13:55