- Serverless Design Patterns and Best Practices
- Brian Zambrano
- 306字
- 2021-08-27 19:12:01
Three-tier web application patterns
Web applications with the traditional request/response cycle are a sweet spot for serverless systems. Because serverless functions are short-lived, they lend themselves well to problems that are themselves short-lived and stateless. We have seen stateful systems emerge and become popular, such as WebSockets; however, much of the web and web applications still run in the traditional stateless request/response cycle. In our first set of patterns, we'll build different versions of web application APIs.
While there are three different patterns to cover for web applications, they will all share a common basis, which is the three-tier model. Here, the tiers are made up of the following:
- Content Delivery Network (CDN) for presentation code/static assets (HTML, JavaScript, CSS, and so on)
- Database for persistence
- Serverless functions for application logic
REST APIs should be a common and familiar tool for most web developers. In Chapter 2, A Three-Tier Web Application Using REST, we'll build out a fully featured REST API with a serverless design. This API will have all of the methods you'd expect in a classic REST API—create, read, update, delete (CRUD).
While REST APIs are common and well understood, they do face some challenges. After starting with a serverless REST API, we'll walk through the process of designing the changes needed to make that same API work as a single GraphQL endpoint that provides the same functionality in Chapter 3, A Three-Tier Web Application Pattern with GraphQL.
Finally, in Chapter 4, Integrating Legacy APIs with the Proxy Pattern, we'll use a proxy pattern to show how it's possible to completely change an API but use a legacy API backend. This design is especially interesting for those who would like to get started migrating an API to a serverless platform but have an existing API to maintain.
- 高效能辦公必修課:Word圖文處理
- LabVIEW虛擬儀器從入門到測控應用130例
- Learning Apache Cassandra(Second Edition)
- 3D Printing for Architects with MakerBot
- Docker High Performance(Second Edition)
- 完全掌握AutoCAD 2008中文版:機械篇
- Linux:Powerful Server Administration
- MATLAB/Simulink權威指南:開發環境、程序設計、系統仿真與案例實戰
- 菜鳥起飛系統安裝與重裝
- 網絡脆弱性掃描產品原理及應用
- 從零開始學JavaScript
- 中老年人學數碼照片后期處理
- Hands/On Kubernetes on Azure
- ABB工業機器人虛擬仿真教程
- R Programming By Example