We used event driven architecture using Amazon SNS to publish events and other services can subscribe to them to do what they need to do when that event happens. This allowed us to preserve highly cohesive and lowly coupled services and it also allowed us to reduce each request's completion time using an asynchronous flow.