tencent cloud

云函数

动态与公告
产品动态
产品公告
新手指引
产品简介
产品概述
相关概念
工作原理
产品优势
应用场景
相关产品
购买指南
计费概述
计费方式
计费项与计费方式
函数算力支持
免费额度
产品定价
计费示例
欠费与停服说明
快速入门
使用控制台创建一个事件函数
操作指南
配额管理
函数管理
Web 函数管理
日志管理
并发管理
触发器管理
函数 URL
自定义域名
版本管理
别名管理
权限管理
运行实例管理
插件管理
监控与告警管理
网络配置
层管理
执行配置
扩展存储管理
DNS 缓存配置
资源托管模式管理
近离线资源托管模式
工作流
触发器
触发器概述
触发器事件消息结构汇总
API 网关触发器
COS 触发器
CLS 触发器
定时触发器
CKafka 触发器
Apache Kafka 触发器
MQTT 触发器
触发器配置描述
MPS 触发器
CLB 触发器说明
云 API 触发器
开发指南
基本概念
测试云函数
环境变量
依赖安装
使用容器镜像
使用 Docker 安装依赖
错误类型与重试策略
死信队列
云函数接入数据库
自动化部署
云函数状态码
常见错误码解决方法
开发者工具
Serverless Web IDE
函数间调用 SDK
第三方工具
代码开发
Python
Node.js
Golang
PHP
Java
Custom Runtime
使用镜像部署函数
Web 框架部署
通过命令行完成框架部署
快速部署 Egg 框架
快速部署 Express 框架
快速部署 Flask 框架
快速部署 Koa 框架
快速部署 Laravel 框架
快速部署 Nestjs 框架
快速部署 Nextjs 框架
快速部署 Nuxtjs 框架
快速部署 Django 框架
实践教程
最佳实践概述
云产品联合解决方案
业务开发相关实践
实时音视频 TRTC
对象存储 COS
消息队列 CKafka
日志服务CLS
负载均衡 CLB
视频处理 MPS
内容分发网络 CDN
云数据仓库 PostgreSQL
云点播 VOD
短信 SMS
Elasticsearch Service
定时任务
视频处理
客户案例
腾讯在线教育
在线教育行业案例
游戏聊天系统
腾讯互娱国际(IEGG)
API 文档
History
Introduction
API Category
Making API Requests
Other APIs
Namespace APIs
Layer Management APIs
Async Event Management APIs
Trigger APIs
Function APIs
函数和层的状态说明
Data Types
Error Codes
SDK文档
常见问题
通用问题
Web 函数相关问题
计费相关问题
网络相关问题
日志相关问题
SCF 工具相关问题
事件处理相关问题
API 网关触发器相关问题
相关协议
Service Level Agreement
联系我们
词汇表

并发概述

PDF
聚焦模式
字号
最后更新时间: 2025-03-28 10:24:33
并发是云函数在某个时刻同时处理的请求数。在业务其他服务可以支撑的情况下,您可以通过简单的配置实现云函数从几个并发到数以万计并发的拓展。

并发运行原理

在调用函数时,云函数会分配一个并发实例处理请求或事件。函数代码运行完毕返回后,该实例会处理其他请求。如果在请求到来时,所有实例都在运行中,云函数则会分配一个新的并发实例。
云函数遵循一个并发实例同一时刻仅处理一个事件的运行逻辑,保障每个事件的处理效率和稳定性。

异步调用的并发处理

异步事件会先进入云函数平台的队列,并按照先进先出的原则依次处理异步请求。异步请求会根据队列长度、当前函数并发数等情况,选择合适的并发处理方式,拉起足够处理事件的并发实例依次处理事件。
若异步调用失败,云函数平台将遵循一定的规则重试,详情可参见 异步调用重试策略

同步调用的并发处理

同步事件到达云函数平台后,平台将会检测是否有空闲并发实例。如有,则事件将会立刻发送给空闲并发实例进行处理。如没有,则平台将会启动新的并发实例来处理事件。
若同步调用失败,您需要自行重试。

并发的计算

云函数的并发指的是函数代码同时处理请求或调用的数量,您可以通过以下公式估算:
并发数 = 请求速率 × 函数运行时间 = 每秒请求次数 × 每个请求的平均耗时
您可以在监控信息中的“运行时间”看到每个请求的平均耗时。 例如:某业务 QPS 为2000,每个请求的平均耗时为0.02s,则每个时刻的并发数为 2000qps × 0.02s = 40。

并发实例复用与回收

当并发实例处理完事件请求后,不会立刻被回收,而是会保留一段时间以便复用。在保留期内,如有新的请求事件需要处理,将会优先使用保留中的并发实例,从而实现事件的快速处理,无需新启动并发实例。
保留期过后,如果没有请求需要该实例处理,云函数平台则会回收该实例。对于低并发的场景,不再设置保留期,平台将启动智能回收机制进行回收。
并发保留的时间由云函数平台根据情况动态调整,故函数业务代码中不能假设某个特定保留时间进行程序编写。

并发扩容

如果请求到来时,没有该版本的并发实例可以处理该请求,云函数平台会启动新的并发实例来处理。新启动的并发实例在初始化的过程后,便可以处理事件,我们称之为由弹性并发带来的扩容,而弹性并发的扩容速度上限即函数 burst
在地域维度,每个账号的弹性并发的扩容速度上限(函数 burst)默认限制为500个/分钟,即该地域下所有函数在1分钟内累计最多可以启动500个新的并发实例。如在1分钟内已经达到了当前限制,则将无法再启动新的并发实例,持续到下1分钟。在此期间有新的并发扩容请求,将会产生扩容受限错误(429 ResourceLimit),详情可参见 云函数状态码
例如,广州地域的账号默认并发额度可以支撑128MB函数的1000个并发实例。有大量请求到来时,第一分钟可以从0个并发实例启动到500个并发实例。如果还有请求需要处理,第二分钟可以从500个并发实例启动到1000个并发实例,直至并发实例可以满足请求的需要或达到并发上限。
目前500个/分钟的函数 burst 可以满足多数业务场景。如果您的业务遇到该扩容速度的限制或者需要增加命名空间级函数 burst的管理能力,您可以选择使用预置并发进行预热或购买 函数套餐包 提高函数 burst 限制。

预置并发

云函数平台弹性并发扩容的并发实例需要经历初始化的过程:包括运行环境初始化及业务代码初始化等过程。 您可以使用预置并发功能,预先配置并发实例。云函数平台将在您配置后开始启动并发实例,同时不会主动回收预置并发的实例,尽可能地保障有相应数量的并发实例。如遇到并发实例因代码内存泄漏等错误,云函数平台会将其替换为新的实例。详情可参见 预置并发

并发服务承诺

并发扩容限制

并发扩容限制
默认限制
额外可申请
弹性扩容并发速度限制(函数 burst)
500并发/分钟
支持万级并发扩容速度,可通过购买函数套餐包提升配额。
预置扩容并发速度限制(预置 burst)
100并发/分钟
根据业务情况自动调整预置并发的启动速度。
在地域维度,用户弹性并发的扩容速度默认限制为500并发/分钟。例如客户有5w并发的诉求,需要5w/ 500 =100分钟就能完成扩容操作,如需提升函数 burst 可直接购买 函数套餐包。云函数平台会根据您业务的情况调整预置并发的启动速度,预置扩容并发速度平均为100并发/分钟。

函数并发配额

云函数平台默认提供函数粒度的并发管理能力供您灵活控制不同函数的并发情况。每个账号在地域维度有总并发额度的限制,不同地域配置的函数并发配额并不相同,详情见表格。如果您需要提升各项配额或者增加命名空间维度的并发配额管理可直接购买 函数套餐包
函数并发配额
地域
默认配额
额外可申请
广州、上海、北京、成都、中国香港
128,000MB
百万MB级并发配额,可通过购买函数套餐包提升配额。
新加坡、东京、硅谷、法兰克福、深圳金融、上海金融
64,000MB


并发管理

云函数平台提供函数粒度的并发管理能力,详情可参见 并发管理

并发内存与并发数

为了您更准确的进行并发管理,云函数的并发配额按照内存为单位计算。例如256MB的并发配额代表着1个256MB内存的并发实例,或者是2个128MB内存的并发实例。

最大独占配额

当您为一个函数设置最大独占配额,将会有以下两个效果:
最大独占配额是此函数的并发额度上限,所有版本的并发额度加和小于等于最大独占配额。
并发额度划给该函数后为函数独享,不再提供给其它函数。

并发监控

函数的并发在处理实际请求时,该并发会被标记为执行并发。从云函数的监控中,可以查询到函数、函数某个具体版本、别名的执行并发。由于执行并发的采集有一定的时间间隔,如函数的执行时间很短而并发较高,则当前监控可能会有一定偏差。

使用场景

通过综合使用最大独占配额、预置并发等能力,您可以灵活调配多个函数间的资源用量情况,并按需预热函数。

共享配额

在未进行各项配置的情况下,各函数默认共享使用账号额度。如果有某个函数产生了突增业务调用,可以充分利用空闲未使用的额度,来保证突增不会引起函数的调用并发超限。

并发保障

如果有某个函数的业务功能比较敏感或关键,需要尽力保障请求的成功率,此时可以使用最大独占配额。最大独占配额可以给到函数独享额度,确保并发的可靠性,不会由于多函数的争抢导致的调用并发超限。

预置并发

在函数对冷启动敏感、或代码初始化流程耗时较长、加载库较多的情况下,可以通过设置具体函数版本的预置并发,预先启动函数实例来保障运行。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈