编者按:本期我们用导读的方式介绍加州大学伯克利分校一个研究团队发布的《Cloud Programming Simplified: A Berkeley View on Serverless Computing》。
无服务器云计算几乎代替程序员更容易使用云平台所需的所有系统管理操作。 它提供了一个接口,极大地简化了云编程,并代表了一种类似从汇编语言到高级编程语言的过渡和演变。 本文简要介绍了云计算的历史,包括对 2009 年 Berkeley View of Cloud Computing 论文的预测的说明,解释了无服务器计算的动机,描述了突破当前无服务器限制的应用程序,然后列出了行业发展障碍并研究对应的机会,无服务器计算充分发挥其潜力所需的条件。 正如 2009 年的论文确定了云计算面临的挑战并预测它们将得到解决,并且云计算的应用将加速一样,我们预测这些问题是可以解决的,并且无服务器计算将长大为云计算未来的主导。
文章第 1 部分引用 2009 年发表的《云计算的伯克利观点》(The Berkeley View on Cloud Computing)中提到的 6 个对云计算特性的总结,这些特性大部分都已实现,但开发者依然背负繁重的系统运维工作量,导致行业对 5、6 两点的实现进展差强人意。作者们提出,2009 年随后的几年内,云计算形态只不过是把之前本地运维的服务器概念搬运到了云端(远端),开发者们的系统运维压力并没有得到很好的缓解甚至工作负担因为这个层级的抽象而更重了。最后列出传统云中,开发者们不得不负担的 8 类繁重的系统运维工作。
文章第 2 部分以 AWS 的传统云节点计算和无服务器计算为例进行对比,介绍无服务器计算的起源,分别对「软件开发」和「系统运维」两个岗位任务分析了两者的特点。
作者们把传统云和无服务器云类比从汇编语言到高级编程语言的过渡,前者的开发者需要关注过多底层细节,而后者则可以更专注更高层级的业务逻辑。同时,作者们进一步提出传统云和无服务器云的三大关键区别:
第 2 部分分别从底层到高层,围绕硬件、基础云平台、无服务器、应用的顺序列出无服务器云的核心功能模块;同时也对比了 Kubernetes 模式的计算与理想的无服务器之间的异同,提出 Kubernetes 只是简化了服务器部署,算是一种从传统云到无服务器云的过渡服务形态。最后,对无服务器的应用场景进行分析,引用了 2018 年的一份行业调查报告得出的结论:
第 3 部分总结了目前(2019 年)无服务器平台产品的局限性。
第 4 部分是总结当前的局限性,提出伯克利大学研究团队们对行业产品未来发展方向的 5 个维度的发展指标,也就是,无服务器计算应该发展成什么样:抽象层、系统层、网络层、安全层、架构层。
第 5 部分讨论无服务器计算发展的 3 大谬误和 3 个陷阱。例如:「无服务器计算的运营费用不可预测」陷阱,可通过管理好一套无服务器应用的计费历史来粗略估算未来的运营预算/成本。
第 6 部分是总结以及对无服务器计算的未来提出展望。伯克利的研究者们大体上对无服务器计算的未来十分乐观,也指出不少行业的共同挑战。
最后列出他们对无服务器计算未来 10 年(2019 – 2029)的预测:
上一篇:疫情下的人工智能、大数据、云计算
下一篇:供应链中台系统怎么样?