无服务器计算成为云原生的下一个发展方向
2022-05-30司锐精
司锐精
当一个新技术出现时,首先被关注的往往是它的技术价值。如果技术价值得到了证实,那么就到达了神奇的“跨越鸿沟”时刻———新技术进一步证实了其商业价值,被广泛的应用,进而成为主流技术。然而只有极少数几项技术,会再向前迈进了一步,从主流技术进一步演变为必不可少的技术。
关系数据库就是其中之一,20世纪70年代问世以来,它让人们能开快速、便捷地存储和检索大量信息。再比如图形界面,使PC变成了可能,而且很快就成为企业发展业务必不可少的基础设施。而互联网的兴起带来了电子邮件、电子商务,并最终在手持设备上实现了移动计算。为了顺应时代,几乎每个企业都需要跟进这些改变商业模式的技术。
所有这些进步都发生在短短几十年的时间里。但如果回过头来仔细想想,这样一种思路就会变得清晰起来:现代变革是由那些帮助人们将“原来不可能变为可能”的重大应用所推动的。而如今Serverless正日益被企业和开发者们投来期许的目光。
Serverless计算
纵观技术发展,从SQL数据库到移动应用,到如今的云计算架构,“云”已经充分证明了它的商业价值,就连最传统的企业也意识到上云的必要性,并开始尝试数字化转型。但是由于分布式系统固有的复杂性,云原生架构的实现非常困难,只有拥有深厚技术积累的企业才能真正发挥云的最大潜力。
新的问题总是会带来新的解决方案,云计算正在进行着新的演进,Serverless计算已经成为云原生的下一个发展方向———基于云、容器和微服务架构的交付方式。Serverless允许企业将集群的资源分配、错误修复、系统维护、容量管理等复杂运营工作转交给云服务厂商(包括多家云服务商,因为Serverless技术同样也可以消除多云和混合部署的复杂性)。
相比较于传统云计算结构,Serverless让开发人员可以更快速、轻松地构建稳定可扩展的业务系统,是一种非常好的资源使用方式。
Serverless推动创新
Serverless可以简化繁琐但必要的IT运维工作,从而大幅度消除技术团队的创新障碍。随着DevOps团队的效率提高,企业就能够快速开发原型以尝试新的产品或服务,然后根据市场反应进行灵活的调整。
简单服务:Serverless可以将原本复杂的运维工作简单化,包括资源调配、预测容量、配置、更新、安全和联网。这为中小型企业和小型技术团队降低了门槛,从而实现了云计算的普及化。
原生连接性:公司过去从产品中获取利润,但今天的利润往往来自于平台,而平台负责的就是应用服务系统与用户系统的连接。从某种角度上看,得平台者得天下,哪些企业能够与平台进一步扩大和加深联系,哪些企业就会赢得先机。
动态系统:Serverless实现了一个快速的、动态的交付系统,构建功能将其交付给市场,可立即获得客户反馈,然后根据反馈快速提供功能创新和改进。利用集成到云平台的Serverless功能和集成,开发人员可以使用持续交付(CI/CD的下一阶段)每天一次甚至多次的交付新版本。
可尝试性:Serverless的简单性、连接性以及动态响应特性相互结合,形成了Serverless最主要的一个优势———可嘗试性。团队可以频繁地试错,快速地抛弃验证失败的想法,从而找到正确的产品推进方向,Serverless使得创新变得充满活力、无风险。
随着Serverless和其他无代码解决方案的崛起,会看到一种新的混合型职业的出现———技术型企业家。Serverless为有创意的工程师创造了新的途径,在将专业且复杂的基础设施运营工作剥离之后,他们可以在几乎零成本的条件下测试、试验和发布自己的新想法。
Serverless数据库
Serverless是一种非常好的资源管理方式,但是到目前为止,对Serverless的关注主要集中在应用层面。通过AWS Lambda,Google Cloud Run,Fargate等产品,将应用程序托管到云中,由云提供商负责应用的运行和弹性伸缩。对于业务方而言,通过云管理基础设施可以说是现阶段的首选。
所有的应用程序都依赖于数据,所有的连接都用数据来描述,为了应对全球互联互通的需求不断升级,已经有不计其数依赖于复杂基础架构的传统企业逐步将自托管的数据库进行上云化。
我们正处于数字化转型的大潮之中,数据驱动着我们所做的一切,Serverless数据库可以实现接近无限的数据和基础设施托管。越来越多的数据库以Serverless方式托管,因为技术团队发现其技术栈中的绝大部分已经基于云原生设计,但问题却是数据库一直在拖后腿。
所有Serverless应用程序都具有类似的特点:将运维工作自动化和剥离、基于消费量的计费、弹性伸缩、内置弹性和容错能力。数据库应用程序也不例外,真正的Serverless数据库还应该提供3个附加功能:分布式体系结构、地理(全球)规模以及简单云SQL API。如果将所有这些特点组合起来,就可以看到下一代数据库的样貌:数据库作为服务部署,消除ops限制,通过应用程序使用的数和所需存储的量计费,同时确保一致性和弹性伸缩。
如果上述这些因素可以实现,可以想象未来的企业将创造出比现在更惊艳百倍的产品,来满足一向喜欢“吃着碗里瞧着锅里”的消费者。
Serverless的未来
见证Serverless的奇迹的时刻就在眼前,Serverless有可能成为下一代重要的架构范式,也可能只是云原生架构范式的进一步演进。无论是哪种方式,都可以看到越来越多的开发人员和架构师选择了Serverless模型,并用它构建企业软件和服务的核心。在一个不确定的时代唯一可行的策略就是主动去适应变化,无论未来如何发展,保证生存的方式只有一种,就是与不断变化和不可预测的技术和商业共同发展。因此创新能力是企业生存的必要条件,意味着企业要能够快速迭代,收集客户的实时反馈,并通过简单低成本的试错进行快速响应。
而从这个层面上看,Serverless恰恰可以帮助企业在业务活动中随时进行创新和试错,这也就不难理解大家为什么对它寄予厚望了。