Serverless Compute at the Heart of Your EDA • Julian Wood • GOTO 2024

Learn how to choose and combine AWS Lambda and Fargate for event-driven architectures. Compare features, use cases, and best practices for serverless compute.

Key takeaways
  • Lambda functions can only run for up to 15 minutes and scale rapidly from zero with pay-per-use pricing

  • AWS Fargate provides serverless containers with longer running times and more computing power (up to 16 vCPU/120GB RAM vs Lambda’s 10GB limit)

  • Step Functions enables visual workflow orchestration and can coordinate between Lambda and Fargate for complex event-driven architectures

  • Lambda excels at request/response patterns and short-lived compute tasks, while Fargate is better suited for long-running processes and higher resource needs

  • ECS (Elastic Container Service) is free to use and handles container orchestration, with Fargate managing the underlying compute resources

  • Event-driven architectures can be built using EventBridge to route events between services and trigger compute resources

  • Lambda can now scale to handle 10,000 concurrent requests within 90 seconds (improved from previous 12-minute ramp-up)

  • Container workloads on Fargate provide more control over networking, persistence, and runtime environment compared to Lambda

  • AWS manages patching, scaling, and infrastructure for both Lambda and Fargate, allowing developers to focus on application code

  • Choosing between Lambda and Fargate depends on factors like compute duration, resource requirements, concurrency needs, and predictability of workload