I would like to share with you how I managed to deploy a solution to store Domain Events in DynamoDB in 2 days (and mostly because of AWS permission issues...๐ ).
I wanted a solution to store how the user interacted with different Domain Models and decouple that storage from the monolithic so they can grow independently. I aimed to create something super simple, or at least not that complex, in 2 to 3 days.
I wanted to process events as:
Monolith sends message to โก๏ธ SQS โก๏ธ Triggers Lambda to store it into โก๏ธ DynamoDB Table
Even though DynamoDB might not be an optimal solution to be used as Event Store, I have given it a try for the next reasons:
It is fully managed by AWS
It is cheap enough
We don't require high write throughput nor read for the moment.
Able to encrypt the content
Implementation
I decided to go with:
Terraform as Infrastructure as Code
Python for AWS Lambda
You can find the source code here ๐
Ready to be deployed into your cloud solution ๐ช๐

