“Serverless的趋势在2020年刚刚到来,我认为2020年是Serverless技术的元年,今年将会有大量的主流应用、主流企业,包括一些500强的企业的核心应用会从原来的主机架构或者容器的架构直接迁移到Serverless”,腾讯云Serverless产品副总监张浩接受雷锋网在内的媒体采访时说道。
腾讯云将Serverless技术看作继虚拟机、容器之后的第三代通用计算技术,这是有原因的——2017至2019年,腾讯云Serverless的用户规模、产品下载和调用等数据每年增长超过10倍以上,2020年腾讯云也已经做好了规划。
Serverless元年
Serverless直译为无服务器,这是相对于客户视角而言,开发者无需关注底层服务器或者容器资源,只需使用平台支持的语言编写核心代码并设置代码运行的条件,底层计算资源包括服务器 CPU、内存、网络和其他配置/资源维护、代码部署、弹性伸缩、负载均衡等完全由云服务商来提供,并且按照代码实际运行时间收费,空闲时不收费。
最早提出Serverless概念的是Amazon,2014年年底Amazon Lambda也正式推出,此后全球各大云服务厂商相继推出各自的Serverless平台,典型如Google Cloud Functions,Azure Functions,IBM Cloud Functions。
国内市场Serverless开始普及在2017年,腾讯无服务器云函数,阿里云函数计算相继推出,此外开源Serverless框架,如Apache OpenWhisk,Spring Cloud Function,Lambada Framework,webtask也不断涌现。
如同十多年前,没人能笃定云计算实现“No Hardware”,SalesForce喊出“No Software”时也让人不解,Serverless就这么接近爆发奇点。
2020年是Serverless技术元年,张浩主要根据以下几点做出判断:
首先在技术层面,我们已经具备了支撑海量业务的能力。对Serverless技术了解的人都可能听说过有冷启动,在调用方面有冷启动、热启动一些问题。在2017、2018年的时候,很多开发者在用Serverless会垢病一个问题就是它的性能很差,来源于两个方面。
第一个是单次的调用,由于底层还是用的通用的容器、虚拟化的技术,在整个调用Serverless单元的生产过程中效率比较慢,往往触发一个请求,在弹性扩缩的时候,会带来前端大量的超时。腾讯现在会把整个冷启动的SLA的概率降到5个9以下,非常小的概率才会遇到冷启动。
在遇到冷启动的情况下,我们也在200毫秒以内分配一些新的布点。这只是Serverless突破的一个新的点,包括还有在虚拟网络的加速,包括做租户隔离的安全方面的升级等等,我们都在技术基础领域会去做到支撑这种核心的应用迁移到Serverless,已经有一些高海量的发布业务如腾讯视频等海量服务正在迁移到Serverless平台,每秒的QBS并发是5万或者10万,会全量上到Serverless平台。
市场和客户认知方面,其实客户是非常理性和可观的,我们在见一些客户决策者的时候,他们一下就能get到,你这个东西就是我想要的,说出了我的心里话,CTO的本质的价值就是要让产品更快速地上线,让技术架构更快速地适应市场的变化,以及技术架构是稳定、可靠、可扩展的,Serverless技术完全吻合诉求。
当然在这个过程中,实际的落地缺乏一些开发者工具以及缺乏生态的支持,会让一些决策者非常疑惑,是不是真的要all in。在这个过程中,随着能力的提升,我们会有大量的开发者包括一些公司的决策者把新型应用逐步在Serverless里面试水,而且现在已经有非常良好的一个反馈。包括像在小程序领域,最近像新冠肺炎的疫情,在小程序那一块,可以看到大量的开发者真的是有钱出钱有力出力,能写代码就写代码,贡献了非常多的疫情监控、检测、健康码等等很多的技术,也是通过小程序和Serverless的创新,也得到了一个广泛的价值认证和落地,可能我提出一个idea到真正落地,用Serverless加小程序三两天就上线了,而且能够推广到全国一个大屏的监控,一个小区的疫情管理系统等等。
“从底层技术的发展以及客户对Serverless的一个认知,到Serverless价值的落地逐步被大家接受,在2020年,我们会继续迎来10倍以上甚至20倍、30倍的爆发性的增长,腾讯在这方面做好了一个准备。”张浩表示。
雷锋网(公众号:雷锋网)了解到,Serverless现在主流的客户群体主要还是一些有快速迭代应用、能够在C端有快速响应的一些场景,比如像小程序,移动互联网应用,创业类以及一些腰部互联网公司,这些企业没有历史IT负担敢于接受新技术快速创新以及迭代它的业务。
Serverless的三座大山与腾讯云的“三板斧”
新生事物总要经历由概念到落地痛苦的适应过程,Serverless也不例外,目前摆在Serverless技术落地面前的三座大山,腾讯云也针对性的做出应对。
首先就是成本和费用,Serverless追求按需索取、按量付费,但是业内很多厂商不是站在开发者的角度设计计费系统,导致开发者在使用过程中没有能完全享受到按量付费、按需索取的一个价值,相比云主机按秒付费,目前行业内已经将Serverless架构的计费粒度普遍降低到100毫秒,但在实际应用中依然有大量实际运行时长少于100毫秒的业务场景依然按照100毫秒计费。
以实际运行时长30毫秒的场景来说,如果按照100毫秒计费的话,相当于用户多花费了 70% 的资源费用。这实际上给开发者造成了不必要的成本压力。腾讯云大胆的推出一毫秒级别的计费模式,这应该是目前在整个云计算领域最小颗粒度以及最精准的计费颗粒度,意味着所有请求调用实现真正按量计费,预计将在云厂商之间引起示范效应。
第二座大山是生态问题,Serverless前期因为生态缺乏而被诟病,要想更进一步,生态问题无法回避。每个厂商都希望推出自己的标准,函数调用、事件触发、函数黄金变量定义以及标准等等都是封闭的,缺乏开源的规范和开源的生态支持。相似的一幕曾经在容器领域上演,直到后来kubernetes成为事实标准,Serverless还在寻找自己的事实标准。
腾讯云则首先瞄准自家微信,在微信内构建起完善的生态。比如,在微信生态,推出的“小程序·云开发”产品,由于可以大幅提升小程序的开发效率,上线一年后注册账户即超过23万,为超过50万开发者提供服务。
在开源生态建设层面,腾讯云通过开源协同的方式持续向Serverless framework社区贡献。该项目在GitHub上Star数超过3.5万,日下载量超过4万,是全球最流行的Serverless开源开发框架,其中的serverless应用商城提供Vue、 React 、Express、Koa等前端、web端、全栈应用组件。
第三板斧针对开发者,Serverless的真正使用者是开发者,而现在开发者缺乏一些好的工具,整体环境环境还不够友好。
腾讯云则针对针对Serverless架构下的开发、运维、调试和部署等全生命周期的能力建设,落地 Serverless 开发的全云端闭环体验,同时,为开发者提供了企业级 Serverless项目上云的最佳实践。
开发者只需要通过3步即云端部署,云端调试、云端运维就可以实现全云端开发体验,解决传统本地开发模式云上产品配置复杂,学习成本高,框架迁移难以无缝部署到云端,调试效率低下等开发困境,实现服务部署。
在全球独立咨询与服务机构Forrester日前发布的《TheForrester New WaveTM: Function-As-A- Service Platforms, Q1 2020》报告中。腾讯云FaaS能力综合评分获得全球前三,中国第一,成为中国唯一进入全球Top3的云厂商。雷锋网雷锋网