函数计算基本概念

本文涉及的产品
简介: 函数计算基本概念

服务
服务是函数计算资源管理的单位,是符合微服务理念的概念。从业务场景出发,一个应用可以拆分为多个服务。从资源使用维度出发,一个服务可以由多个函数组成。例如一个数据处理服务,分为数据准备和数据处理两部分。数据准备函数资源需求小,可以选择小规格实例。数据处理函数资源需求大,可以选择大规格实例。

创建函数前必须先创建服务,同一个服务下的所有函数共享一些相同的设置,例如服务授权、日志配置。服务的相关操作,请参见管理服务。

FC函数
函数计算的资源调度与运行是以函数为单位。FC函数由函数代码和函数配置构成。

FC函数必须从属于服务,同一个服务下的所有函数共享一些相同的设置,例如服务授权、日志配置。函数的相关操作,请参见管理函数。

函数计算支持事件函数和HTTP函数两种函数类型,关于二者的区别,请参见函数类型。

请求处理程序
在创建函数时,您需要指定请求处理程序。函数计算的运行时会加载并调用您的请求处理程序处理请求。请求处理程序包含以下两种类型:
事件请求处理程序
用于处理除HTTP触发器以外的各种事件源触发的事件请求,例如OSS触发器、SLS触发器和RocketMQ触发器等。

HTTP请求处理程序
用于处理HTTP触发器触发的请求调用。更多信息,请参见配置HTTP触发器并使用HTTP触发。

您可以在函数计算控制台配置请求处理程序。具体操作,请参见创建函数。

版本
版本相当于服务的快照,包括服务的配置、服务内的函数代码及函数配置,不包括触发器。版本类似于Git里的一次commit,该commit包含了一个或者多个代码文件及其配置变更,是当前仓库的一次快照。更多信息,请参见管理版本。

别名
别名可以理解为指向特定服务版本的指针,利用别名来轻松实现发布、回滚以及灰度发布等功能。别名类似于Git里的tag,可以将当前commit标记为tag,进而release为一次业务迭代。更多信息,请参见管理别名。

标签
使用标签(Tag)对服务资源进行归类,便于搜索和资源聚合。您还可以通过标签功能将服务分组,实现不同角色对不同分组的服务拥有不同的操作权限。更多信息,请参见管理标签。


层可以为您提供自定义的公共依赖库、运行时环境及函数扩展等发布与部署能力。您可以将函数依赖的公共库提炼到层,以减少部署、更新时的代码包体积,也可以将自定义的运行时,以层部署在多个函数间共享。更多信息,请参见创建自定义层。

触发器
触发器是触发函数执行的方式。在事件驱动的计算模型中,事件源是事件的生产者,函数是事件的处理者,而触发器提供了一种集中、统一的方式来管理不同的事件源。在事件源中,当事件发生时,如果满足触发器定义的规则,事件源会自动调用触发器所对应的函数。更多信息,请参见触发器简介。

运行时
函数运行环境,函数计算提供多种语言的运行环境。具体信息,请参见运行时。

您还可以构建您自己的运行时,或者自行构建容器运行环境。更多信息,请参见以下文档:
Custom Runtime基本原理
Custom Container简介
自定义域名
您可以为带有HTTP触发器的函数或应用绑定自定义域名,实现通过固定的域名访问该函数或应用。您也可以将配置的自定义域名作为源站域名,为其添加CDN加速域名,使您的访问用户能够更加快速地读取所需内容,降低访问时延,提高服务质量。更多信息,请参见配置自定义域名。

按量付费
按量付费是一种先使用后付费的计费方式。您只需为实际使用的函数计算资源付费,不需要提前购买资源。更多信息,请参见按量付费。

资源包
资源包是一种预付费的计费方式,与按量付费相比,您可以以更优惠的价格享受等量资源,从而减少成本。函数计算提供各种资源使用类型的资源包。具体信息,请参见资源包。

弹性实例
函数计算的基本实例,适用于各种突发流量和计算密集场景。更多信息,请参见实例类型及使用模式。

GPU实例
基于Turing架构的实例,将不同业务负载下沉至GPU硬件加速,使得业务处理效率更高。主要适用于音视频、AI人工智能和图像处理等场景。更多信息,请参见实例类型及使用模式。

冷启动
冷启动是指在函数调用链路中的代码下载、启动函数实例、进程初始化及代码初始化等环节。当冷启动完成后,函数实例就绪,后续请求就能直接被函数执行。更多信息,请参见函数计算冷启动优化最佳实践。

按量模式
按量模式下,函数计算系统自动为函数分配和释放实例。更多信息,请参见按量模式。

预留模式
预留模式是将函数实例的分配和释放交由您管理。当您预留了函数实例,函数计算系统收到函数调用请求时,会优先将请求转发给您预留的函数实例。当函数请求的峰值超过预留的函数实例处理能力时,剩余的部分请求将会转发给您的按量模式的实例。更多信息,请参见预留模式。

预留模式下实例的执行环境是长驻的,可以彻底消除冷启动对业务的影响。

为了解决预留模式配置的固定预留实例利用不充分问题,您可以设置预留模式实例的弹性伸缩功能,支持定时弹性伸缩和指标追踪弹性伸缩两种方案。

定时弹性伸缩

在指定时间将预留的函数实例量设定成需要的值。更多信息,请参见配置预留模式的弹性伸缩。

指标追踪弹性伸缩

通过追踪监控指标实现对预留模式的函数实例进行动态伸缩。更多信息,请参见配置预留模式的弹性伸缩。

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
6月前
|
监控 Java Serverless
函数计算的基本概念
函数计算的基本概念
47 0
|
弹性计算 运维 Serverless
Serverless 的概念首次提出
Serverless 的概念首次提出自制脑图
92 0
Serverless 的概念首次提出
|
文字识别 Serverless 对象存储
Serverless几个重要概念
Serverless几个重要概念自制脑图, 介绍了函数计算(Function Compute)、Funcraft、OSS、ROS、CI/CD、spring-petclinic、Fun、ROS、Ghostscript、LibreOffice、OCR(光学字符识别)、Tesserocr。
169 0
Serverless几个重要概念
|
存储 人工智能 监控
“晕乎乎的概念”:阿里云函数计算的“应用”又是个啥
为什么阿里云函数计算发布了这么多功能,只有少数的功能会伴随着体验活动一起来做运营?那么这个“应用”到底是何方神圣?他和现在“服务”,“函数”有啥关系?
“晕乎乎的概念”:阿里云函数计算的“应用”又是个啥
|
存储 弹性计算 运维
喧哗的背后:Serverless 的概念及挑战
本文作者作为阿里集团 Serverless 研发运维平台负责人,从应用架构的角度去分析 Serverless 为何会让那么多人着迷,它的核心概念究竟是什么,并总结了一些落地 Serverless 必然会面临的问题。
|
存储 弹性计算 运维
喧哗的背后:Serverless 的概念及挑战
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 导读:本文作者作为阿里集团 Serverless 研发运维平台负责人,从应用架构的角度去分析 Serverless 为何会让那么多人着迷,它的核心概念究竟是什么,并总结了一些落地 Serverless 必然会面临的问题。
喧哗的背后:Serverless 的概念及挑战
|
存储 弹性计算 运维
喧哗的背后:Serverless 的概念及挑战
本文作者作为阿里集团 Serverless 研发运维平台负责人,从应用架构的角度去分析 Serverless 为何会让那么多人着迷,它的核心概念究竟是什么,并总结了一些落地 Serverless 必然会面临的问题。
喧哗的背后:Serverless 的概念及挑战
|
存储 运维 Serverless
入门篇:函数计算的基本概念和通用场景概述
阿里云的函数计算(Function Compute)是基于Serverless这种理论框架下推出弹性海量计算平台,是Serverless的一种实现,函数计算主打的旋律是轻和快,从一定意义上来看也可以认为函数计算就是Serverless的一个Paas平台。
18918 1
|
15小时前
|
网络协议 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之在阿里云函数计算中,服务器调用FC函数时出现 "[Errno -3] Temporary failure in name resolution)" 错误如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
11 4
|
16小时前
|
Web App开发 缓存 安全
Serverless 应用引擎操作报错合集之在使用阿里云函数计算的过程中遇到“Browser closed unexpectedly”的错误如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
10 2