分布式系统的概念

  • 2018-11-30 14:13 /
  • 作者:讯维

跟人工智能、大数据、无人驾驶这些正处于风口上的技术一样,一提起分布式瞬间就让人觉得高大上。
 
要理解分布式,我们先为大家引入与“分布式”对应的概念——“集中式”,简单打个比方我们每个人手上都会有一台手机吧,手机里自然是装了各种软件、APP、数据资料,要想刷下朋友圈,立马就去打开微信;要找餐厅吃饭,就会去大众点评;要拍照,就会打开摄像机。再比如我们的电脑,我们会装上各种软件、程序和数据库。我们把所有的东西统统集中放置在一台设备上,这就是最简单的“集中式”概念。显而易见的好处是方便使用、便于管理。
 
但要是突然间系统硬盘坏了,那所有放在这台设备上的资料和数据怎么办?当然,现在我们有各种百度云、腾讯云这类服务商提供的备份服务。但如果是企业用户呢?那恐怕免不了就是一场灾难了。

 
分布式的本质是去“去中心化”
 
只要是以中心化为核心的系统,就会面临两个难以避免的问题。第一,单个设备的硬件处理能力一定是受限的,当系统容量和处理能力要求不断提升时,中心化系统的能力不可能无限制扩展;第二,再强大的系统也难免会出现故障,用户把所有的鸡蛋都放到一个篮子里,这显然不利于风险管理。
 
为了解决这样的问题,在当前半导体技术和网络技术发展充分成熟的条件下,于是诞生了当前火热的分布式系统。
 
与集中式相对应,分布式是由若干个系统节点整合而成,而其中每一个节点之间又是完全独立的,但这些节点之间有序运行,用户所感知到的是一个整体的存在。简单来说,就是使用起来感觉像集中式,但内部运作却是由不同的节点完成,之间却不会互相影响。如此,在系统的故障独立性方面,分布式出现故障而不影响系统整体正常使用的优势秒杀了集中式,“去中心化”这一分布式系统得天独厚的优势被越来越多的人认同和追捧。
 
于是,厂商们对于分布式技术的宣传也是拼尽全力。一时间,各种真真假假的分布式产品充斥市场,鱼龙混杂。有些产品基于传统的拼接器架构,前后端采用盒子,厂商把其称为分布式;有些厂商推出一些分散架构的系统,勉强与分布式沾边,也被称作分布式。从严格意义上来讲,这些都只是打了擦边球。

 
纯正的分布式架构应该满足两个条件:第一,系统一定是基于IP架构的,分布式系统由于基于不同的网络、操作系统、计算机硬件和编程语言,必须要采用一种通用的网络通信协议来屏蔽不同结构系统之间的差异。而只有采用IP标准化协议后,才可能实现大规模扩展。也就是说,不管是本地网络还是异地,只有完全基于IP网络,才是真正的分布式是架构。
 
第二,分布式系统必须是“去中心化”的,目前专业AV行业有些厂商产品虽称自己基于IP架构,而实际上却依赖于中心服务器。中心服务器不管有多么强大,总会受限于系统处理能力,毕竟任何一个设备的能力都是有限的,而且设备在处理运行过程中,一旦发生故障,就会影响到整个系统的正常运行,只有在系统完全实现“去中心化”后,才可以实现系统的无限扩展,才不会因为某个中心节点发生故障而影响到整个系统。
 
以成都讯维的分布式架构为例,系统完全实现了“去中心化”,用户再也不用担心系统中的任意一个节点出问题了。

返回