Web and backend application processing

The easiest way to describe this design pattern is to compare it with a traditional three-tier application architecture. For many years, the dominant approach to a scalable web app was to set up a load balancer, web servers, app servers, and databases. There are many types of third-party tools and techniques to support this design and, if done properly, a fault tolerant architecture can be achieved that will scale up and down to support the spike in traffic that the application will experience. The challenge with this approach is that it does not fully take advantage of the cloud native services and still relies on capacity planning, people to manage the environment, and lots of configuration to ensure proper cluster setup and failover. This exact same three-tier application can be designed using fully serverless technologies that will enable the administration, execution, fault tolerance, and other administration to be handled by the service, at a fraction of the cost.

We have a fully serverless implementation of a three-tier application. The static frontend page is hosted in an object storage, Amazon S3, where it is served to users who call it from their browsers. Since this service allows for pages to be served, it will handle all of the requirements of load distribution and processing power automatically and not require a web server to be set up to host the web application. Once the user interacts with the page in a way that requires dynamic processing, an API call is made to Amazon API Gateway, which acts as a scalable entry point to execute the code to dynamically execute the user's request via an AWS Lambda function, which is called on an event per API call. The Lambda function has virtually unlimited abilities perform other actions. In this use case, the function will update an Amazon DynamoDB table for data persistence. Other backend functionalities can be performed by forked functions, such as putting messages in queues, updating a topic for further messaging, or executing an entirely new subsystem backend that performed whatever requirement the system has.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset