Design principles - AWS Lambda

Design principles

Many of the best practices that apply to software development and distributed systems also apply to serverless application development. The broad principles are consistent with the Well-Architected Framework. The overall goal is to develop workloads that are:

  • Reliable: offering your end users a high level of availability. AWS serverless services are reliable because they are also designed for failure.

  • Durable: providing storage options that meet the durability needs of your workload.

  • Secure: following best practices and using the tools provided to secure access to workloads and limit the blast radius, if any issues occur.

  • Performant: using computing resources efficiently and meeting the performance needs of your end users.

  • Cost-efficient: designing architectures that avoid unnecessary cost that can scale without overspending, and also be decommissioned, if necessary, without significant overhead.

When you develop Lambda-based applications, there are several important design principles that can help you build workloads that meet these goals. You may not apply every principle to every architecture and you have considerable flexibility in how you approach building with Lambda. However, they should guide you in general architecture decisions.