SuperAPI AI 工具集

serverless

部署与运维

查看项目

更新于 10-16 09:56

技能介绍

用途:Serverless 是一种云原生开发模式,让应用无需自行管理服务器,由云厂商承担服务器基础设施的 provisioning、维护与扩缩容。该技能面向 FaaS、事件触发、冷启动缓解、无状态执行与云 BaaS 集成提供架构协助。

适用场景:事件驱动负载(处理 S3 上传、Kafka/Kinesis 流事件、异步队列 worker);波动与尖峰流量(请求量不可预测,可从 0 自动扩展到数千实例);低维护 Web API(部署微 API 或 webhook 处理器,无需管理服务器、操作系统或打补丁);定时后台任务(通过 EventBridge / CloudWatch 运行 cron 作业、批量数据转换与报表任务)。

核心概念:实例按需启动、空闲后关闭,容器终止时内存状态被销毁;全局变量在热启动间保留,但处理函数内的局部状态会重置。冷启动生命周期为:下载运行时 → 初始化执行上下文(冷启动)→ 执行处理函数(热启动)。

主要实践:把重客户端与数据库连接池初始化放在 handler 外,以在热启动中复用;Serverless Framework 通过 serverless.yml 的事件映射把函数直接连到云托管服务而无需轮询;用小包体(如 esbuild 压缩)缩短冷启动初始化时间;使用细粒度 IAM 最小权限;结构化日志注入调用请求 ID 与追踪头。避免在 Lambda 运行长时间单体服务(函数超过 15 分钟限制或需持续内存的场景应放 ECS/Kubernetes);避免创建无池化的关系型数据库连接,可用 RDS Proxy 或 HTTP 型数据库驱动;不要依赖本地磁盘,/tmp 为临时且仅在热启动间共享,静态资源应放 S3。

常见问题:超时需提高超时设置、优化代码或改为异步模式;OOM 需增加内存(同时分配更多 CPU),并改为流式处理而非全量载入内存。

限制与缺失:资料未提供具体收费、价格、平台支持范围或效果数据;具体命令、完整安装步骤与更多配置细节暂未提供。