AgentSkillsCN

aws-lambda

在AWS Lambda上构建并部署无服务器函数,配置触发器,管理权限,并优化性能。在实现无服务器应用时加以运用。

SKILL.md
--- frontmatter
name: aws-lambda
description: Build and deploy serverless functions on AWS Lambda. Configure triggers, manage permissions, and optimize performance. Use when implementing serverless applications.
license: MIT
metadata:
  author: devops-skills
  version: "1.0"

AWS Lambda

Build serverless applications with AWS Lambda.

Create Function

bash
# Create function
aws lambda create-function \
  --function-name myfunction \
  --runtime python3.11 \
  --handler app.handler \
  --role arn:aws:iam::xxx:role/lambda-role \
  --zip-file fileb://function.zip

# Update code
aws lambda update-function-code \
  --function-name myfunction \
  --zip-file fileb://function.zip

Function Code

python
# app.py
import json

def handler(event, context):
    return {
        'statusCode': 200,
        'body': json.dumps({'message': 'Hello!'})
    }

API Gateway Integration

bash
# Create REST API
aws apigateway create-rest-api --name myapi

# Add Lambda permission
aws lambda add-permission \
  --function-name myfunction \
  --statement-id apigateway \
  --action lambda:InvokeFunction \
  --principal apigateway.amazonaws.com

Environment & Configuration

bash
# Set environment variables
aws lambda update-function-configuration \
  --function-name myfunction \
  --environment "Variables={DB_HOST=xxx,API_KEY=yyy}"

# Set memory and timeout
aws lambda update-function-configuration \
  --function-name myfunction \
  --memory-size 256 \
  --timeout 30

Best Practices

  • Minimize cold starts
  • Use layers for dependencies
  • Implement proper error handling
  • Use provisioned concurrency for latency-sensitive functions
  • Monitor with CloudWatch

Related Skills