一段时间以来,技术专家一直在预测 IT 基础设施的终结,至少在企业不得不担心的事情方面。 但无服务器计算的兴起将对话推向了一个全新的高度。 (有关无服务器的基础知识,请查看无服务器计算 101。)
这个问题当然是有效的。 为什么有人愿意花时间、麻烦和费用来构建自己的计算基础设施,因为他们可以简单地租用他们需要的抽象资源,只在他们需要的时间内使用?
但与任何技术一样,无服务器有其优点和缺点,这意味着它为某些应用程序提供了最佳支持,对其他应用程序提供了中等支持,对其他应用程序的支持仍然较弱。
更好的虚拟化
首先,优点。 根据以色列创业公司 YL Ventures 的说法,无服务器计算是基础架构即服务的下一阶段,其中运行时和运营管理功能成为虚拟化的重点。 这就是它有时被称为功能即服务的原因,因为它允许用户执行给定的任务,而不必担心配置服务器、虚拟机或任何其他底层计算资源。 主要优势是提高了敏捷性和可扩展性,以及更准确的成本/消耗模型,甚至提高了安全性,尤其是针对 DDoS 攻击。 (有关对抗 DDoS 攻击的新方法,请参阅区块链技术会让 DDoS 攻击过时吗?)
出于这些原因,该公司表示,无服务器有可能彻底改变复杂软件的开发、部署和管理方式,这反过来将改变企业为日益增长的服务驱动型经济创建和支持关键应用程序的方式。 事实上,DevOps 和物联网等新兴举措可能会通过无服务器计算在功能和成本节约方面得到显着提升。
事实上,无服务器的领先冠军之一是 Netflix。 该公司拥有超过 1 亿用户流式传输数据密集型视频内容,最近完成了其内容交付平台向云端的迁移。 它现在使用 AWS Lambda 服务来处理媒体文件、备份、实例部署和支持监控软件。 当然,公司可以将所有这些都放在内部基础设施上,但仅资本成本就将是天文数字,更不用说维持接近运营效率的任何技术人员队伍。
微软 Azure Functions 项目经理 Donna Malayeri 还指出,无服务器技术的最新迭代消除了一些在一开始就阻碍采用的关键障碍。 其中包括对调试和监控的更强大支持,以及对本地虚拟机的支持,使企业能够拥有本地开发体验,这是构建私有云和混合云的公司的必备条件。 使用无服务器,企业需要担心的只是它的代码以及它是如何触发的; 底层平台负责所有其余的工作。
尽管如此,Tech Republic 的 Matt Asay 表示,并非无服务器计算的所有缺点都已得到解决。 一方面,该技术比以往任何时候都更容易创建代码,将其托管在无服务器资源上,然后将其抛在脑后。 这反过来又会导致不必要的资源消耗和扩展的攻击向量,可以利用这些攻击向量将恶意代码插入企业数据环境。 同时,无服务器有可能增加对单个提供商的依赖,因为在支持现有代码的同一平台上启动新代码变得更加容易。 然而,在这两种情况下,重要的是要注意问题不在于无服务器解决方案本身,而在于企业选择管理它的方式。
已知未知
除了无服务器计算的积极和消极方面外,关于它究竟如何融入整个数据生态系统,还有很多未知数。 根据游戏开发人员 Michael Churchman 的说法,无服务器的用例在很大程度上仍未定义,而且似乎主要局限于大容量后端进程和实时数据流。 这些都是重要的功能,但它们只代表整个企业工作负载的一小部分。
另一个大问题是无服务器是否应该与遗留基础设施集成或取代遗留基础设施。 诱惑将是利用成本最低的资源并提供最高水平的性能。 但是根据具体情况确定这一点可能很困难,尤其是当所支持的服务开始以新颖且不可预测的方式相互交互时。
Serverless作为第三方解决方案,在应用和服务性能方面也遇到了同样的挑战。 SLA 可以详细说明服务丢失或减少的补救措施,但它们不能保证正常运行时间。 在决定是否为任何给定应用程序采用无服务器时,请务必仔细评估停机对现实世界的影响。
其他新兴技术(即容器)与无服务器计算之间的关系在很大程度上也是未知的。 许多人甚至在进入企业数据环境方面取得实质性进展之前就认为无服务器代表了容器的终结。 然而,Churchman 认为,无服务器和容器实际上是相互补充的,无服务器资源充当外部服务,不一定需要紧密集成到应用程序的主要容器生态系统中。
与任何新兴技术一样,企业应该谨慎地接受无服务器,并清楚地知道它希望从这个新环境中获得什么。 只有通过谨慎和周密计划的采用,组织才能降低将关键功能委托给仍在开发的第三方数据解决方案的风险,同时提高新的、更敏捷的操作环境的回报。