随着云计算技术在未来一年提高其影响力,无服务器的发展仍在持续。在2019年,人们看到越来越多的组织进入到无服务器和Kubernetes的浪潮中,许多人开始看到一些切实的结果。然而,这些技术的广泛采用才刚刚开始。以下将对无服务器发展的五种趋势进行研究,这些趋势将会影响企业在未来几年内开发和交付软件的方式:
1.无服务器将会大规模采用,也适用于企业应用程序
2018年见证了功能即服务(FaaS)和无服务器计算的出现。2019年将是大规模采用的一年,这对于企业用例也是如此。随着基于容器的应用程序(云原生应用程序)的不断增加,无服务器的需求日益增长,这是无服务器所需的架构。
现代软件交付的发展使得容器的多功能性和强大功能加速了现代化遗留应用程序的云原生应用程序的开发。这意味着以前认为云原生不可能实现现代化的业务场景(如边缘设备、传输中的数据或有状态的应用程序)如今变成了云原生的。随着云原生和容器化应用程序的增长,开发人员利用无服务器功能更轻松地在各种应用程序中执行各种任务。人们还将看到提供大规模微服务的团队将其中一部分过渡到功能即服务(FaaS),以此降低应用程序的复杂性。
诸如工作流之类的功能即服务(FaaS)的高端功能将使以模块化和更可组合的方式构建更复杂的无服务器应用程序变得更加容易。
2.无服务器在Kubernetes上成为标准,推动无服务器内部部署和多云发展
在2018年,Kubernetes成为跨多个云计算提供商的容器编排事实上的标准,并且实质上正在成为默认的操作系统,并且是云原生应用程序的头号推动者。随着Kubernetes的广泛应用,它也将成为运行无服务器应用程序的标准。Kubernetes是无服务器的完美基础设施。它可以轻松开发和运行无服务器应用程序,利用Kubernetes的内置功能(如调度程序、集群管理、扩展、服务发现、网络等),所有这些都是无服务器运行时所需的,同时还具有可移植性和对任何环境的互操作性。
Kubernetes作为无服务器基础设施的标准化允许组织在内部部署数据中心或多云环境中运行无服务器应用程序,而无需锁定特定的公共云服务或产生额外的云计算成本。能够利用无服务器的速度,节约成本,并提高利用率,同时利用自己的数据中心,以及在环境之间(甚至在边缘)移植无服务器应用程序的能力,所有这些都增加了企业中无服务器的采用并使它是一个引人注目的架构,不仅可以加速新应用程序的开发,还可以作为遗留应用程序现代化的引人注目的模式。
随着Kubernetes围绕云原生架构的部署得到进一步完善,人们期望将基于Kubernetes的功能即服务(FaaS)框架与服务网格集成。换句话说,如果说Kubernetes是新的Linux,那么无服务器就是新的Java虚拟机。
3.无服务器也将应用于有状态和长期运行的应用程序
虽然无服务器应用程序仍主要用于短期无状态应用程序,但人们看到无状态用户的无服务器应用程序越来越多,这得益于无服务器技术和基于Kubernetes的存储解决方案的进步。
此类工作负载的示例包括机器学习模型的测试和验证以及执行复杂信用检查的应用程序,其间具有等待状态。无服务器工作流程将是确保此类用例不仅可以执行良好,而且还可以根据需要进行扩展的一个关键因素。
4.无服务器工具将进入转型时代
对无服务器和功能即服务(FaaS)来说,工具缺乏成熟度一直是个问题。这其中包括开发人员和运营团队工具和生态系统支持。
2019年,行业领先的功能即服务(FaaS)项目将开始采用工具装配线视图,大大改进了开发人员体验、单元测试、实时重载和CI/CD平滑管道等功能。GitOps作为功能即服务(FaaS)开发的范例也将在2019年兴起。这确保了每个工件都可以使用Git进行版本控制,并用于回滚或前滚等事情,从而解决困扰快速移动和频繁更新项目的版本控制挑战。
5.无服务器成本将在2019年成为一个问题
随着越来越多的企业为大规模、关键任务应用程序采用无服务器,并且随着负载的增加,公共云上无服务器产品的成本和云计算锁定将成为一个日益受到关注的问题。
2019年,企业将尝试通过标准化开源无服务器解决方案(如Kubernetes)来控制云计算成本,并确保互操作性和可移植性,并采用策略始终使用最佳云计算提供商的服务,而无需重新编写应用程序代码,以及在他们自己的私有云上运行无服务器。最后一点将对他们的利润产生巨大影响,提高他们的资源利用率,并利用他们现有的基础设施和在内部数据中心进行的投资,以提供与公共云相同的开发人员体验和云计算运营体验。
希望这些预测能够成为更大的无服务器架构应用浪潮的标志,其中每个应用程序组件都被建模为服务,在触发器上执行,并且仅在满足服务请求的持续时间内运行。该模型在完全采用端到端服务时,不仅可以进一步简化编写软件所需的内容,还可以编写软件,保证尽可能快地运行,降低成本,并且安全可靠。