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

Implementing serverless notifications


In the previous section, you learned about the AWS IoT SDK, we just haven't tested it yet. In this section, we will use it in the following two features of our serverless store:

  • Live comments in a product review page
  • Notifications after a payment has been accepted

The first feature is a type of a public notification, as it uses an IoT topic that all users can read. The second one is a private notification, so only one person and the Lambda backend are allowed to access the IoT topic to subscribe or publish messages. We will cover both of them to learn how to give proper access for each case.

Those two examples will illustrate how you can work with IoT to serve notifications, but it does not limit what you can do with it. For example, IoT can also be used for serverless multiplayer games. You could build an HTML5 game that could make requests to a Lambda backend to execute some logic (for example, find a room to play) and an IoT topic to exchange messages...