The Three Elements of the Cloud
Chapter 1 briefly mentioned the three main elements of the cloud:
Compute resources
The computing power behind the machines that execute the program instruc‐ tions
Storage resources
The myriad data stores and different storage media types where near-infinite volumes of data are stored as bits
Network resources
The cables that wrap the Earth to take those bits, transport them, and deliver them to your fingertips
When you look at an AWS cloud data center, located in a specific Region and Availability Zone, the racks of equipment spread across acres of enclosed buildings primarily provide these three elements. We consume their interplay as cloud services, including managed services for our serverless applications.
A key element of the sustainability of the cloud is that the cloud infrastructure is securely shared across users, which enables the cloud providers to make very efficient use of it in a way that individual users or organizations cannot. Nevertheless, it takes energy to move data across the network, store data on and retrieve it from disks, or get your Lambda function to perform what it’s programmed to do. Every action requires electric power. If you stop to think about this, you can begin to understand why environmental sustainability is hugely significant to cloud operation, and thus to serverless.
The Serverless Sustainability Triangle
As is always the case with software development, building applications using server‐ less technologies goes through certain phases, such as the inception of an idea, analysis, design, implementation, and operation in the cloud. The techniques you apply and the processes you follow in each phase may be different in serverless, but the underlying ideas are the same.
In a similar way to how we broke down the three main elements of the cloud, if you partition serverless development, you have the products you build, the processes you follow during the development lifecycle, and the cloud where you deploy and operate your applications. When you place sustainability at the center of your serverless development, you can relate its meaning to all of these. Figure 10-2 depicts these three areas as a sustainability triangle. It shows how sustainability adoption is central to serverless solution development.

Figure 10-2. The serverless sustainability triangle
In the sustainability triangle:
- Sustainable products (serverless applications) are long-lived, garnering maxi‐ mum benefits over a long period.
- Sustainable processes are the principles and practices that guide you in develop‐ ing sustainable products.
- The cloud (the operating platform where your application runs) implements environmental sustainability measures.
The subsequent sections expand on the parts of the serverless sustainability triangle with guidelines and best practices to equip you for your sustainability journey in serverless.