腾讯云云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码, 是实时文件处理和数据处理等场景下理想的计算平台。您只需使用 SCF 平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。以下视频将为您介绍云函数 SCF:
计算资源的变迁
随着云服务的发展,计算资源高度抽象化,腾讯云提供了从物理服务器到云函数和横跨各种抽象程度的计算资源供用户选择。
黑石物理服务器:以物理机为扩展单位。用户完全拥有整台实体计算资源,安全性最好。
云服务器:以云服务器为扩展单位,虚拟化硬件设备。用户和其他租户共享物理机资源,仍可自行配置 CVM 的各项指标,相对部署和迭代更加简单。
容器服务:以服务为扩展单位,虚拟化操作系统。测试和生产环境完全一致,测试和部署非常轻松。
云函数:以函数为扩展单位,虚拟化运行时环境(Runtime)。是现有计算资源的最小单位,具有完全自动、一键部署、高度可扩展等特点,是轻量级服务部署非常好的选择。
无服务器的概述
无服务器(Serverless)不是表示没有服务器,而表示当您在使用 Serverless 时,您无需关心底层资源,也无需登录服务器和优化服务器,只需关注最核心的代码片段,即可跳过复杂的、繁琐的基本工作。核心的代码片段完全由事件或者请求触发,平台根据请求自动平行调整服务资源。Serverless 拥有近乎无限的扩容能力,空闲时,不运行任何资源。代码运行无状态,可以轻易实现快速迭代、极速部署。
腾讯云云函数简介
腾讯云云函数是腾讯云提供的 Serverless 执行环境。您只需编写简单的、目的单一的云函数即可将它与您的腾讯云基础设施及其他云服务产生的事件关联。
使用云函数时,您只需使用平台支持的语言(Python、Node.js、PHP、Golang、Java 及 Custom Runtime)编写代码。腾讯云将完全管理底层计算资源,包括服务器 CPU、内存、网络和其他配置/资源维护、代码部署、弹性伸缩、负载均衡、安全升级、资源运行情况监控等。但这也意味着您无法登录或管理服务器、无法自定义系统和环境。
云函数自动地在同一地域内的多个可用区部署,同时提供极高的容错性。云函数在执行时将根据请求负载扩缩容,从每天几个请求到每秒数千个请求,都由云函数底层自行伸缩。您无需人工配置和介入,只需为运行中的云函数付费,即可满足不同情景下服务的可用性和稳定性。若云函数未运行,则不产生任何费用。
您可以自定义运行云函数的时机,例如,在 COS Bucket 上传时、删除文件时运行云函数、使用 Ckafka 中的消息时运行云函数、应用程序通过 SDK 调用时运行云函数,或指定云函数定期执行。您可以使用云函数作为 COS 服务的数据处理触发程序轻松实现 IFTTT 逻辑,您也可以通过构建灵活的定时自动化任务,用于覆盖手工完成的操作,轻松构建灵活可控的软件架构。
腾讯云云函数产品特性
Serverless 帮助用户脱离繁冗的开发配置工作,只需关注业务代码逻辑的编写,不用任何的基础设施建设、管理与运维开销。该服务模式降低了研发门槛,提升业务构建效率,获得了大量企业和开发者的支持。
支持多种开发工具和语言,卓越的开发体验
腾讯云 Serverless 团队从多方面着手,提供可以满足多种开发场景的相关工具或能力。例如:
使用 Serverless Cloud Framework,在本地开发环境中进行项目创建、本地调试打包、一键部署上线。
通过 VS Code 插件,及 IDE 可视化操作,将函数的线上线下管理及代码编写调试,整合在一个界面中完成。VS Code IDE 及插件还提供了函数的本地管理、开发调试、上线发布功能。
支持 Web IDE,在控制台上实时的开发调试,与本地开发调试的体验相同,方便代码的调整或查看。
支持 Python、Node.js、Golang、PHP、Java 等语言,同时支持 Custom Runtime,您可以根据您的需要自定义运行环境。
多种部署方式,适应各种环境
支持控制台部署,命令行部署,SDK/API 部署,Web IDE 直接部署以及镜像部署。
多样化触发,支持更多业务场景
触发方式包括 API,SDK,以及其他多种云服务产品的事件例如 COS、API 网关等。多种触发选择支持更多使用场景。
自动化弹性执行,贴合调用曲线
在用户无感知的情况下根据调用量自动扩缩容,完美贴合调用曲线,最大程度节省资源和成本。
按需付费,毫秒级计费模式
腾讯云云函数资源使用量支持按1ms时间粒度计费,相较于按100ms粒度计费,可以为您大幅度节约成本。