We have an event sourced architecture following CQRS prnciples. We use Akka toolkit on our server side where we create persistent actors and the events are stored in EventStore. We also have some views(for online channels) which are fed through Amazon Dynamo DB. So for updating the views on Dynamo DB, we create event streams from Event Store using Akka read plugins and update the Dynamo DB tables. But we are consistently facing issues while updating the views mostly related to managing the streams.
What I was thinking if we push events from EventStore to Kinesis streams(managed service) which can trigger AWS Lambda which would update Dynamo DB tables. So for every persistence ID(stream) on ES, will have a Kinesis stream to ensuring ordering while building the views. This would make our read side(View) completely serverless to an extent.
Has anybody tried that or can share 2 cents on pros and cons?