Skip to content

New pattern submission - cdk-dotnet-durablefunction-imageprocessing #3239

Description

@dougperkes

New Pattern Submission — cdk-dotnet-durablefunction-imageprocessing

Pattern Details

  • Title: Lambda Durable Function — Image Processing Pipeline with Fan-Out/Fan-In (.NET)
  • Description: A durable function that processes an uploaded image in parallel (thumbnail, watermark, metadata extraction), then writes aggregated results to DynamoDB.
  • Language: .NET (C#)
  • Framework: CDK
  • Level: 300
  • Services: AWS Lambda, Amazon S3, Amazon DynamoDB

How It Works

This pattern deploys a Lambda durable function triggered by S3 uploads. When an image is uploaded, the function fans out to three parallel branches: generate a thumbnail, apply a watermark, and extract metadata.

All three branches execute concurrently using ParallelAsync and are independently checkpointed. Once all complete, the function aggregates results and writes them to DynamoDB.

This demonstrates the fan-out/fan-in pattern with durable functions for parallel image processing, with built-in resilience — if any branch fails, only that branch retries on replay.

GitHub PR for template:

#3238

Author

  • Name: Doug Perkes
  • Bio: Senior Solutions Architect at AWS, focused on .NET and serverless.
  • LinkedIn: dougperkes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions