分布式实时处理系统:原理、架构与实现
上QQ阅读APP看书,第一时间看更新

1.1 分布式概念

由计算机组成的网络无处不在,现如今我们的日常生活已经被各种不同类型的网络包围,如电话网络、企业网络、家庭网络以及各种类型的局域网,共同构成了我们称之为Internet的网络。因此,我们可以断言Internet是由各种不同类型、不同地区、不同领域的网络构成的互联网。我们可以发现,互联网并没有集中式的控制中心,而是由大量分离且互联的节点组成的。这正是一个分散式的模型。我们可以把这个概念类比到即将讲解的分布式概念上。

分布式概念是在网络这个大前提下诞生的。传统的计算是集中式的计算,使用计算能力强大的服务器处理大量的计算任务,但这种超级计算机的建造和维护成本极高,且明显存在很大的瓶颈。与之相对,如果一套系统可以将需要海量计算能力才能处理的问题拆分成许多小块,然后将这些小块分配给同一套系统中不同的计算节点进行处理,最后如有必要将分开计算的结果合并得到最终结果,那么就将这种系统称为分布式系统。对于这种系统来说,我们会采用多种方式在不同节点之间进行数据通信和协调,而网络消息则是常用手段之一。

通过以上描述,我们基本可以认为,一套分布式系统会使用网络上的硬件资源和软件组件进行计算,而各个计算节点间通过一定方式进行通信。这是从计算机科学的角度简单概述了分布式系统的概念。

如果我们从网络这个关键因素考虑,我们可以将计算分摊到网络中不同的计算节点,充分利用网络中的计算资源,而这些节点可能存在于不同的区域中,在空间上存在一定距离。虽说这种解释不那么正式,但也从另一个角度上生动地阐述了分布式的基本特性,即节点分布。