synchronisation • Used here to provide an identity pool to allow browser-side code to run as an unauthenticated user that has IAM permissions to scan the DynamoDB vote aggregation table directly
to create publicly available REST APIs • These manage the requests and responses when invoking their respective Lambda functions • Two resources used here, one for voting via SMS/Twilio and one for voting via the website
without needing a server (code runs in AMZ Linux container) • Three Lambda functions used here: ◦ One to register votes received via Twilio ◦ One to register votes received via the website ◦ One that listens to a DynamoDB stream from the votes table, and aggregates the votes when there are changes
will be suited for it • Occasional latency spike due to Lambda container creation (~2-3 secs average for Node.js runtime) • Requires initial learning curve to enable design and development of appropriate application architectures