For the analytics microservice the caching is similar, only the main API is replaced by AWS API Gateway, and the persistence is DynamoDB.
During the Runtime phase caching is even more crucial –
Calendar Runtimes get event information from various sources, including events added manually by the owner, events imported from 3rd parties such as Google and Outlook, and also iCalendar live feeds which get updated constantly and have the potential to be the weakest link.
To solve the weakest link problem iCalendar feeds are cached in the main persistence.
In addition to the iCalendar caching, the entire events feed for each calendar is also cached in an in-memory Database (Redis is currently used, but Memcached is also supported).
Diagram that depicts the workflow for when a calendar requests its events feed during runtime –