I built this project to get my hands familiar with both SQS and SNS.
- A customer completes an order.
OrderManagementLambda
receives the order details and sends them toOrderQueueSQS
.PaymentProcessingLambda
retrieves the order fromOrderQueueSQS
and processes the payment.- The result of the payment is published to
PaymentStatusSNS
. InventoryManagementLambda
, subscribed toPaymentStatusSNS
, updates the inventory and publishes toInventoryStatusSNS
.NotificationServiceLambda
, subscribed toInventoryStatusSNS
, sends an email to the customer confirming the order.
I also had to setup AWS SES in order to send emails.
This could also be done via Terraform.
After provisioning the resources, I got a confirmation email.
I was using the Sandbox, so to send emails to anyone I would have to get out of it.
I would send emails to my personal email using different variations with the plus signhttps://support.google.com/a/users/answer/9282734?hl=en#.