腾讯云发布无服务器云函数,较云主机成本低约70%

4月26日,腾讯云宣布,正式开放国内首款FaaS(Function as a Service,函数即服务) 产品——无服务器云函数(SCF,Serverless Cloud Function)。用户只需要上传代码即可以最简捷的方式使用腾讯云高效稳定的全球基础设施,并可实现毫秒级的弹性伸缩,同时该服务兼具成本低廉的特点,代码按需运行,空闲时不收费。经测试,按调用次数和运行时间付费,在每个月请求不足百万时,使用无服务器云函数比使用多台云主机搭建集群的成本减少约70%。

(图:腾讯云官网已开放无服务器云函数的使用申请)

无服务器云函数(SCF,Serverless Cloud Function)是腾讯云提供的无服务器(serverless)执行环境,帮助用户在没有购买和管理服务器时仍能运行代码。用户只需要使用云平台支持的语言编写核心代码及设置代码运行的条件,代码即可在腾讯云基础设施上弹性、安全地运行,并可完全管理底层计算资源,包括服务器CPU、内存、网络、代码部署、弹性伸缩、负载均衡等服务。使用无服务器云函数将可免除所有运维性操作,企业和开发者可以更加专注于核心业务的开发,实现快速上线和迭代,把握业务发展的节奏。

相比云主机,在微服务架构场景下无服务器云函数展现了更为明显的弹性轻便的优势,为中小型开发者和大型服务的部分模块设计提供了新的思路和技术支持。同时在互联网、金融、电商等领域,在移动及Web服务后端、视频图像处理、数据分析等场景下,如果用户需要更易用、弹性、低价的服务,选择无服务器云函数的体验更佳。

腾讯云专家工程师刘颖认为,无服务器云函数从底层开始变革计算资源的形态,为软件架构与应用服务部署带来新的设计思路,极大降低云计算的使用成本,推动全行业的业务创新步伐。他表示,腾讯云无服务器云函数在QQ、微信等腾讯海量业务中运行已久,具备深厚的技术积累和应用实践,希望通过这项技术的开放,让大中小型企业及全体开发者均可享受这项技术。

Serverless:云端新革命

从行业趋势看,Serverless是云计算必经的一场革命。

云计算把传统的物理服务器拆解成了更加弹性易用的虚拟机(VM)和容器(container),虚拟化的对象从硬件设备到运行环境,用户越来越不需要关心底层基础设施。然而,开发者仍然避免不了花费大量精力处理与服务器相关的、无差异化的运维操作。

过去在设计一个服务时,开发者需要预估使用多少公有云的或私有云的服务器,用什么形式的持久存储,网络带宽需要多大,如何在服务请求波动时进行服务伸缩。处理这些复杂的问题对业务本身并没有决定性的助力。有研究称,开发团队真正花在开发业务代码的时间只有39%,其他时间都被处理部署变更、突发事件等占用了。

在这样的背景下,新的服务形态–函数即服务(FaaS)于2012年应运而生。用户只需要编写并上传最核心、最有竞争力的代码,无需配置或管理服务器即可运行,仅按实际运行收费。并且平台自动管理其他的工作如高可用部署、流量分发、弹性伸缩等。

无服务器云函数在移动及Web服务后端、视频图像处理、数据分析等场景下,其易用、高效、弹性、按需、低价等优势都能很好地满足多样化的需要。例如,证券公司分析每12小时的交易内容,找出交易量top 5并根据用户进行个性化推荐。使用无服务器云函数进行周期性的统计任务,并响应用户点击流,即可轻松实现随用随启、任务完成后立即释放的弹性模块。

轻量易用:解决上云第一步问题

云函数轻量易用的特点使没有接触过云计算的开发者也能轻易上手使用。用户只需要简单地改造在本地环境运行正常的代码,并打包上传至腾讯云平台,即可以极低的价格(根据运算时间不同价格不定,一般调用费用在4元/百万次左右)在腾讯云遍布全球的基础设施上运行代码。

例如,使用Google的开源图片压缩算法Guetzli应用于生产系统中帮助压缩用户上传的图片,只需要完成:第一步,将代码及依赖打包上传至云函数平台;第二步,配置一个COS Bucket为触发器。完成上述两个简单的步骤后,即可在应用(如相册、头像应用、商品系统等)中完成用户上传图片后自动进行高保真度的压缩,对应用后台的存储空间和传输的带宽使用率上都有较大的优化

微服务:无服务器云函数是最好搭档

目前,开发者正在将目光投向了微服务(Microservice)这一模块化、灵活、动态的解决方案,腾讯云无服务器云函数是实现微服务的最佳方式。

随着业务的发展,代码常呈现出几何级别的增长速度。在传统的单体式服务(Monolithic)架构中,各个模块相互强依赖、代码间耦合度高。对于开发和运维人员来说,维护困难、部署耗时等弊端急需解决。

在这一背景下,尤其在业务快速变化时期,使用微服务来构建业务敏捷的IT系统是保持业务竞争力非常有效的手段。这样模块化的方式使得整个项目分散成为多个部分、使用不同语言、由不同业务部门的不同开发团队独立完成,帮助缩短项目的生命周期,加快项目开发效率。

通常情况下,应用逻辑层是无状态(stateless)的,缓存、日志、数据库等全部通过外部的独立资源来支持,这样才能保证在业务请求突增时,服务能迅速扩展。各个模块之间通过RPC(Remote Procedure Call,远程过程调用) 调用或消息中间件互相通信,这样每个模块都是自治(self-managed)的。

因此,腾讯云无服务器云函数是实现微服务的最好的方法之一,其与生俱来的事件驱动(event-driven)和无状态(stateless)属性正好满足微服务架构的要求。每个服务(即函数)都拥有几乎无限的处理能力,能跟随业务请求的波动自动完成扩容和缩容。如果采用云服务器构建服务模块,即使在使用量很低时(据测算,数据中心服务器的平均利用率仅在15%左右)仍要支付相应的小时费用。而云函数按实际使用量收费,运行完毕后立即结束计费,价格非常容易预测,没有请求就没有成本支出,价格优势明显。

整体而言,云函数可实现独立开发、简化测试和加速部署等一系列优点,可助力企业在关键时期快速上线和迭代,为初创期的产品提供了很好的解决方案。

了解、申请腾讯云无服务器云函数:https://www.qcloud.com/product/scf

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小程序·云开发专栏

认识小程序云开发

原文链接:https://godbasin.github.io/2018/08/18/wxapp-cloud/

3034
来自专栏CSDN技术头条

使用 Mpvue 开发微信小程序的最佳实践

小程序面世一年多以来,给前端开发带来了巨大的影响,有移动应用的地方,就有小程序的踪迹。经过一年多的发展和沉淀,小程序能力不断放开,产品形态日趋成熟,已经发展成独...

1514
来自专栏mukekeheart的iOS之旅

《JavaScript高级程序设计》学习笔记(2)--JS运算符详解

欢迎关注本人的微信公众号“前端小填填”,专注前端技术的基础和项目开发的学习。 思维导图 前面对JS的运算符的操作很多细节的东西没有提及,今天给大家分享一张网上找...

3504
来自专栏编程微刊

通用的layui框架系统管理后台模板

公司又要开始做新的项目了,这次的项目又是后台管理系统,老板说,之前的后台管理系统都是差不多的,这一次我们换个框架吧,然后抄了一下竞争公司的模板,给我发来了一张原...

602
来自专栏云原生架构实践

云平台的微服务架构实践

763
来自专栏IT米粉

weui-react项目实战新心得

weui-react简介 weui是微信官方制作的一个基础样式UI库,打造与原生微信同样的视觉和交互体验,整个UI库包括网页版和小程序版,网页版包括传统的jav...

2834
来自专栏李鹏的专栏

亿级流量电商详情页系统实战:缓存架构+高可用服务架构+微服务架构

在完全真实的大型电商详情页系统架构下,全流程实战了整套微服务架构,包含了基于领域驱动设计进行微服务建模、Spring Cloud、基于DevOps的持续交付流水...

7101
来自专栏织云平台团队的专栏

自动化运维之架构设计六要点

运维自动化是我们所渴望获得的,但是我们在一味强调自动化能力时,却忽略了影响自动化落地的一个关键因素。那便是跟运维朝夕相处,让人又爱又恨的业务架构。因为业务架构是...

8831
来自专栏小怪聊职场

Python|利用itchat实现“云收藏”功能——收趣正在做的

3436

为什么你总是选择微服务?(一体化架构有疑问)

有没有想过为什么像苹果,eBay和Netflix这样的公司非常关心微服务?是什么让这个简单的架构变得如此特别以至于它被过度炒作?将整个正在运行的应用程序从一体化...

2255

扫码关注云+社区