This is a follow-up post to the session "Design and implementation of Cosmos DB Change Feed-centric architecture" that @miyake and I spoke at Cosmos DB Conf.
It introduces an actual example and implementation of the architecture using Cosmos DB Change Feed.
Live stream and slides
The video and slides of the session are already available. The session itself is conducted in Japanese, but all the slides are prepared in English.
It takes advantage of the high availability and performance of the Cosmos DB Change Feed to make the lambda architecture completely serverless.
Related posts
Cosmos DB is very reliable, but there are a few caveats that need to be taken into account in order to increase the reliability of the overall architecture.
Here is a related post that picks up on some of the important points.
Batch processing - Change Feed pull model
Use the Pull model to control the pace at which data is read from the Change Feed. This is important when implementing batch processing.
First steps of the Change Feed pull model in Azure Cosmos DB
Tatsuro Shibamura ・ Feb 5 '21
Improving resiliency - Retry policy
The best practice for Change Feed is to use CosmosDBTrigger
, but you also need to think about what happens if the funtions fails.
A quick review of the Azure Functions new feature "Retry Policy"
Tatsuro Shibamura ・ Nov 5 '20
Avoid inconsistency - Graceful shutdown
We need to be prepared for randomly timed restarts, which is a characteristic of serverless.
Best Practices for Graceful shutdown in Azure Functions
Tatsuro Shibamura ・ Feb 4 '21
Coolest tweets
The session was held at the end of the APAC time zone, but it was watched by many people. Thank you!
Have fun developing with Cosmos DB Change Feed and Azure Functions!
Top comments (0)