Book Image

Building Serverless Web Applications

By : Diego Zanon
Book Image

Building Serverless Web Applications

By: Diego Zanon

Overview of this book

This book will equip you with the knowledge needed to build your own serverless apps by showing you how to set up different services while making your application scalable, highly available, and efficient. We begin by giving you an idea of what it means to go serverless, exploring the pros and cons of the serverless model and its use cases. Next, you will be introduced to the AWS services that will be used throughout the book, how to estimate costs, and how to set up and use the Serverless Framework. From here, you will start to build an entire serverless project of an online store, beginning with a React SPA frontend hosted on AWS followed by a serverless backend with API Gateway and Lambda functions. You will also learn to access data from a SimpleDB database, secure the application with authentication and authorization, and implement serverless notifications for browsers using AWS IoT. This book will describe how to monitor the performance, efficiency, and errors of your apps and conclude by teaching you how to test and deploy your applications.
Table of Contents (17 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Amazon SimpleDB


SimpleDB is an old service (late 2007), and it is the only one offered by AWS that can really be called a serverless database. AWS offers many other managed databases, such as DynamoDB or RDS, but all of them require that you set provisions and pay for 24 hours a day, even when no one is using your system. You do need to worry about the servers when you need to constantly check whether the capacity is well designed for your traffic.

SimpleDB is serverless for the following reasons:

  • Totally managed by AWS: You don't need to spin-up a machine and install/configure a DBMS.
  • Highly available: AWS manages multiple geographically distributed replicas of your database to enable high availability and data durability.
  • Scalable: You can grow in size very fast without worrying about provisioning.
  • Cost-efficient: You pay for the amount of data stored, data transferred, and the CPU time used to run queries. If no one is using the database, you pay only for what is currently stored.

SimpleDB...