Using Serverless Technology - Modern Application Development on AWS

Using Serverless Technology

When you operate and maintain the servers and operating systems (OS) that run your organization’s applications, your system administrators must spend time completing simple and repetitive tasks, such as applying OS security patches. Instead of scaling up by request volume, they must provision servers for peak volume ahead of time, while carefully considering availability and durability requirements. You might also have to pay for all of this overprovisioned infrastructure in advance, instead of paying for what you use as you go.

Though services such as AWS Auto Scaling and AWS Systems Manager can reduce these burdens on conventional, VM-based infrastructure, when you build your system on serverless technology, you don’t have to provision and manage servers. Your administrators don’t have to spend time on OS patches, or maintain unused resources to be prepared for occasional peak usage. Serverless applications scale to meet the precise demand on each component. Reliability and fault-tolerance are also largely built-in by default, which eliminates much of the design and operations time required for these aspects of the system. By building modern applications with serverless technologies from the beginning, the whole lifecycle of building, deploying, and running applications can also be kept secure. When you remove operational complexity, your developers can focus their time and energy on building products that delight your customers.

AWS provides serverless computing services such as Lambda and AWS Fargate. There is Amazon Simple Storage Service (Amazon S3) for object storage, and there are now two serverless database options: Amazon DynamoDB, a fast and flexible NoSQL database, and Amazon Aurora Serverless, an on-demand and auto-scaling configuration for Amazon Aurora. If you want to build an end-to-end serverless application, compute, database, and storage services might not be enough. You can use other serverless AWS offerings throughout your workload, from API management, messaging, and orchestration, to troubleshooting and monitoring.