边缘计算系统设计与实践
上QQ阅读APP看书,第一时间看更新

1.1.1 IT基础技术的演进历史

在短短的几十年里,IT技术的基础架构已经经历了好几轮天翻地覆的变化,从最早期的大型机到客户端/服务器,再到云计算,再到如今的边缘计算时代。可以看到,IT基础架构每隔20年左右就会有一次比较重大的转变。

1. 20世纪60年代初至20世纪70年代末:大型机时代

这个时代是计算机技术发展的起步阶段,那时大型的主机系统是非常昂贵和精密的。通常,一台计算机就要占满整个机房,所有的计算任务基本上都在物理机房里完成。数据和程序通过极端难用的终端设备输入计算机,然后等待程序执行和处理。大型机不但操作起来十分烦琐,而且学习这些机器的使用方法也非常困难,因此大型机必须由专业人员操作、维护和保养。例如,早期的航空公司订票系统需要手工录入规定字体的数据,然后将这些录好的数据卡片输入计算机系统进行处理,效率极为低下。在美国的一些航空公司,至今还保留着这些古董级系统。

2. 20世纪70年代末至2006年:客户端/服务器时代

时间到了1978年,Intel公司发布了微处理器芯片8086和8088,推动微型计算机逐渐成为计算机系统的主流。这个时期以苹果电脑和IBM兼容机为代表的PC(个人计算机)逐渐发展起来,PC的运算能力越来越强,很多办公和游戏软件可以单独运行在PC中。从20世纪80年代后期开始,互联网进入了高速发展阶段。伴随着网络时代的来临,大量的PC连接到了互联网上。客户端+服务器模式的网络应用开始成为主流,其中包括C/S模式和后来的B/S模式。互联网公司开始发展起来,它们的服务器技术一开始就采用了普通商用微型机硬件和架构。例如,谷歌公司最早的服务器就是自组装的Intel X86系统的集群。那时应用程序的用户访问量和IT系统的复杂程度还远远不能和现在相比。微软公司这样新崛起的科技巨头还只是专注于单机的操作系统和应用软件。传统企业IT系统的基础设施需求通常只需要几台IBM或HP的商用服务器,再加上少量的存储设备就可以满足。当时的互联网公司也是自己建立数据中心,维护从服务器到网络的所有IT基础设施。

3. 2006年至2020年:云计算时代

这个时期,互联网应用从种类到用户数量都出现了爆发式的增长。紧接着,随着移动通信技术的发展,移动互联网应用也开始逐渐发展起来。移动互联网技术从2015年开始成为主流,如今互联网已经无处不在,成为整个现代社会的基础设施之一。不仅高科技企业,传统企业的经营和管理也在不同程度上完成了数字化。事实上,现代企业的一个重要特征就是管理和运营的全面信息化。而站在信息化浪潮尖端的互联网企业需要处理海量的数据,并向大量的用户提供服务;互联网企业需要维护成百上千台计算机组成的庞大集群。大规模分布式计算的理论和实践随着产业界的需求,逐渐发展和完善起来。

与此同时,传统企业对信息技术的需求也大大增加了,有一定规模的企业通常也需要维护大型的数据中心才能支撑各种企业信息系统。这些信息系统产生的大量数据又需要更大规模的存储系统。IT系统的支出已经成为每个企业运营费用的很大一部分。对基础设施,比如服务器、网络设备和存储设备的采购和日常运维会产生非常大的成本;此外,经验丰富的IT系统专家其实并不容易招聘到。企业或创业者自建并自己运维IT基础设施不但成本高昂,而且还不稳定。鉴于这种情况,出现了几种新的IT服务形态,被称为云计算,它们分别是SaaS(Software as a Service)、PaaS(Platform as a Service)和IaaS(Infrastructure as a Service)。

最早出现的云计算服务形态是SaaS,同时也是云计算服务最为常见的形式。其实质是互联网应用的扩展,使用Web程序提供原来需要桌面客户端或桌面软件才能完成的功能。例如,Google Apps、Salesforce、Cisco WebEx及各种在线存储服务等。

对大多数的互联网用户来说,PaaS可能是使用和了解最少的云服务形态了。它是把软件平台或框架作为服务提供给客户的云计算服务形态。不过,PaaS对于程序员来说,却是非常时髦的话题。比如各大云平台提供的容器集群服务,各种Serverless服务框架(如AWS的Lambda、阿里云的函数计算、Heroku、Google App Engine等)。这些服务使应用运行的底层服务器、网络等都不需要程序员来考虑和维护。他们需要做的只是专注于用代码实现需求,然后把代码部署到PaaS服务中。这样大大简化了应用的部署和维护工作,提高了开发效率。PaaS对于边缘计算的影响也非常大,像容器服务和Serverless框架也是边缘计算框架非常重要的有机组成部分。

IaaS的出现要特别归功于亚马逊AWS(Amazon Web Service)的EC2(Elastic Compute Cloud,弹性云计算)和S3(Simple Storage Service,简单存储服务)。简单来说,就是将其内部的虚拟化服务器平台和存储系统直接提供给第三方使用。由于其较强的伸缩性、弹性和按使用付费的方式,可以给企业和创业者节省大量IT基础服务开支。而且由于其易用性,大大简化了应用服务器的部署和维护。亚马逊能够率先推出这样的业务确实令人感到有些意外。首先,当时其主营业务是B2C电子商务,与IT服务毫不相干。其次,亚马逊不是一家传统意义的科技公司,其核心技术团队的创新能力和技术能力不如谷歌、苹果等硅谷巨头。此外,亚马逊公司长期亏损,直到2015年才实现首次盈利,不像其他的科技巨头有充足的资金保障。据说,其IT基础设施服务之所以能在2006年就正式对外开放,是因为乔治·贝索斯要求公司内部的项目在一开始就要考虑今后能够提供给外部用户使用。如今,各大IT巨头基本上都推出了自家的弹性云、弹性存储、弹性网关等服务。美国的主要云服务提供商是AWS、微软Azure和Google GCP;国内的第一大云服务提供商是阿里云,以及第二梯队腾讯、百度、华为等。

4. 2020年至今:边缘计算时代

边缘计算、云计算和物联网的融合与发展将会是未来几年的趋势。一方面,随着通信技术、电子技术、人工智能、区块链技术的发展,对边缘计算能力的需求越来越大。另一方面,公共治理结构和公司内部组织架构的扁平化,要求现代组织内外部的协作方式能够打破空间和物理界限的限制。大量的数据和计算要求能够在终端、工厂、办公室、住宅和机器本地处理。所有的运算和数据都放到中心化的云端数据中心已经变得不太适合,在成本和技术上都不太现实。

比如智能驾驶,如果实时的数据都要传回云平台,处理后再传回车辆端,那将会对车辆和行人的安全造成危害。因为车辆到数据中心的网络连接是不可靠的,互联网的延迟和可靠性保证。将这些数据和计算下沉到边缘设备上,车辆间通过数据链互相通信,通过算法即时作出反应(在几十毫秒内)才能够保证对突发情况的快速响应。其实,从客户端/服务器架构发展到云计算架构,紧接着大量的服务和计算下沉到去中心化的边缘端,也是技术发展的一个自然演进过程。