AWS Compute Blog

James Beswick

Author: James Beswick

James Beswick is a Principal Developer Advocate for the AWS Serverless Team. He works with AWS's developer customers to understand how serverless technologies can drastically change the way they think about building and running applications at massive scale with minimal administration overhead. Follow James Beswick on Twitter: https://twitter.com/jbesw. Visit https://serverlessland.com for more serverless content.

Reference architecture

Building a serverless multi-player game that scales

This post introduces the Simple Trivia Service, a single- and multi-player game built using a serverless-first architecture on AWS. I cover different solutions that you can use to enable connectivity from your game client to a serverless-first backend for both single- and multi-player games.

Read More
AWS Lambda

Operating Lambda: Application design – Part 3

This post discusses choosing and managing runtimes, the effect on performance, and how you can use multiple runtimes within a single serverless application. It explains the networking model and whether a Lambda function must have access to a customer VPC or can run with the default VPC configuration. It also compares the different invocation modes for Lambda functions.

Read More
Example of hierarchical levels of abstraction

Extending SaaS products with serverless functions

As customers increasingly use SaaS solutions in their businesses, they want the same customization and extensibility available in on-premises solutions. SaaS partners have developed APIs and integration hooks to help address this need. For more sophisticated customization, products enable custom code to run within their SaaS workflows.

Read More
Reserved concurrency for throttling example

Operating Lambda: Application design – Scaling and concurrency: Part 2

This post explains scaling and concurrency in Lambda and the different behaviors of on-demand and Provisioned Concurrency. It also shows how to use service integrations and asynchronous patterns in Lambda-based applications. Finally, I discuss how reserved concurrency works and how to use it in your application design.

Read More
Event loops in Lambda-based applications

Operating Lambda: Anti-patterns in event-driven architectures – Part 3

This post discusses anti-pattern in event-driven architectures using Lambda. I show some of the issues when using monolithic Lambda functions or using custom code to orchestrate workflows. I explain how to avoid recursive architectures that cause loops and why you should avoid functions calling functions.

Read More
Idempotent microservice

Operating Lambda: Design principles in event-driven architectures – Part 2

This post discusses the design principles that can help you develop well-architected serverless applications. I explain why using services instead of code can help improve your application’s agility and scalability. I also show how statelessness and function design also contribute to good application architecture.

Read More