Advanced Serverless Workflow Patterns and Best Practices Api309

Title

AWS re:Invent 2022 - Advanced Serverless Workflow Patterns and Best Practices (API309)

Summary

  • Presenter: Ben Smith, Principal Developer Advocate for Serverless at AWS.
  • Focus: Building applications with AWS Step Functions, sharing insights from advanced customers and personal experience.
  • Key Points:
    • Step Functions should be considered first when building applications due to its integration with over 220 AWS services.
    • Different modes of Step Functions: Standard and Express workflows.
    • Data transformation through the step lifecycle.
    • Cost optimization strategies for workflows.
    • Error handling patterns.
    • Introduction of a new feature for high scalability in Step Functions.
  • Goals:
    • To derive more value from AWS services.
    • To build reliable, resilient, scalable, and simple applications quickly.
  • Serverless Pyramid: A conceptual model for AWS services management.
  • Step Functions: A serverless service that allows the creation of workflows to manage the orchestration of different AWS services.
  • New Feature: A new Step Functions feature for super high scalability was announced.
  • Resources: A landing page with deployable templates, blog posts, videos, workshops, and code samples was shared.

Insights

  • Step Functions as a Starting Point: The talk emphasizes starting application development with Step Functions, which contrasts with the traditional approach of beginning with Lambda functions and gradually adding other services.
  • Integration and Orchestration: Step Functions' ability to integrate with a vast number of AWS services without requiring Lambda functions for each action simplifies the orchestration of services and reduces the need for custom code.
  • Cost Optimization: The speaker discusses various strategies to optimize workflows for cost, including using Express workflows for high throughput and short-duration tasks, and Standard workflows for long-lasting tasks.
  • Error Handling: Step Functions provides patterns for handling errors, such as the saga pattern for managing transactions and compensating for failures.
  • Scalability: The new distributed map state feature in Step Functions allows for up to 10,000 parallel executions, making it suitable for large-scale workloads.
  • Resource Availability: The talk highlights the availability of resources such as templates, workshops, and code samples, which can help developers learn and implement advanced serverless workflow patterns.
  • Community Contributions: The presenter mentions that Step Functions workflows on the landing page are contributed by both AWS experts and advanced customers, indicating a collaborative approach to sharing best practices.