AWS Lambda 学习笔

一、Lambda 是什么

  • AWS Lambda 是一个无服务器(Serverless)计算服务。

  • 不需要自己配置或维护服务器,AWS 自动提供运行环境。

  • 只需要上传代码,设置触发条件,Lambda 就会在事件发生时自动执行。


二、运行原理

  • Lambda 不常驻运行,只在被触发时启动。

  • 执行完毕后会自动释放资源。

  • 支持多种语言(Python、Node.js、C#、Java 等)。

  • 可以选择不同运行架构:

    • x86_64(Intel/AMD,兼容性最好)

    • arm64(AWS Graviton,性能高、成本低)


三、触发机制(以 S3 为例)

  1. 在 S3 中设置触发条件(例如上传新文件时)。

  2. 当事件发生时,S3 会自动触发指定的 Lambda。

  3. S3 把事件详情(如 bucket 名称、文件路径等)传给 Lambda 的参数 event

  4. Lambda 函数读取 event['Records'] 获取信息并执行操作,比如:

    • 读取文件内容

    • 处理数据、转换格式

    • 存入数据库或发送通知


四、event 示例(S3 上传触发)

复制代码
{
  "Records": [
    {
      "eventSource": "aws:s3",
      "eventName": "ObjectCreated:Put",
      "s3": {
        "bucket": {"name": "my-bucket"},
        "object": {"key": "upload/data.csv"}
      }
    }
  ]
}

示例代码

复制代码
def lambda_handler(event, context):
    bucket = event['Records'][0]['s3']['bucket']['name']
    key = event['Records'][0]['s3']['object']['key']
    print(f"File uploaded: {bucket}/{key}")

五、Lambda 的调用方式

  • 事件触发(如 S3、API Gateway、CloudWatch)

  • 代码调用(使用 AWS SDK)

  • 命令行调用(AWS CLI)


六、Lambda 与 RDS/S3/API Gateway 的关系

  • 可以处理 S3 上传文件 → 写入数据库(RDS/DynamoDB)

  • 可以作为 API Gateway 的后端服务 → 提供 HTTP API

  • 可以与 IAM、CloudWatch 等服务 配合实现自动化、安全与监控


七、总结一句话

Lambda 是一个事件驱动的无服务器计算服务。

它在特定事件发生时自动执行代码,例如 S3 上传文件、API 调用或计划任务。

你不需要管理服务器,只需写好逻辑,AWS 自动运行。

相关推荐
潇凝子潇3 小时前
AWS CLI自动删除资源脚本
chrome·云计算·aws
weixin_307779133 小时前
使用AWS IAM和Python自动化权限策略分析与导出
开发语言·python·自动化·云计算·aws
FreeBuf_3 小时前
红队APT组织利用泄露的IAM密钥劫持AWS账户实施数据窃取
云计算·aws
chennn123 小时前
c++相关学习
开发语言·c++·学习
Gorgous—l4 小时前
数据结构算法学习:LeetCode热题100-矩阵篇(矩阵置零、螺旋矩阵、旋转图像、搜索二维矩阵 II)
数据结构·学习·算法
eggcode4 小时前
Vue前端开发学习的简单记录
vue.js·学习
你也渴望鸡哥的力量么5 小时前
爬虫学习笔记
笔记·爬虫·学习
日更嵌入式的打工仔5 小时前
InitLWIP() 初始化
笔记·嵌入式硬件·学习
QAQ小菜鸟5 小时前
AutoCAD如何将指定窗口导出成PDF?
学习