- Learning AWS
- Aurobindo Sarkar Amit Shah
- 261字
- 2021-07-16 13:19:45
Chapter 2. Designing Cloud Applications – An Architect's Perspective
As an architect, we are sure you have come across terms such as loosely coupled, multi-tier, services oriented, highly scalable, and many more. These terms are associated with architectural best practices and you find them listed in the first couple of pages of any system architecture document. These concepts are generally applicable to all architectures, and the cloud is no exception.
In this chapter, we want to highlight how these are accomplished on the cloud. You will notice that the approach you take towards cloud application architecture remains the same to a large extent. However, you need to be aware of certain peculiarities of the cloud environment, in order to architect scalable, available, and secure cloud applications. For example, if you are architecting a web-scale application, you need to take into consideration the ability to automatically scale up and down. What are the implications of auto scaling on your design?
One of the major differences in cloud-based SaaS applications and on-premise enterprise applications is multi-tenancy. What are some of the design considerations of multi-tenancy? How do you design for UI, services, and data multi-tenancy in a multi-tier architecture?
In this chapter, we describe the familiar and not-so familiar architectural best practices in the cloud context, by covering the following topics:
- Multi-tier architecture
- Designing for multi-tenancy including data security and extensibility
- Designing for scale
- Automating infrastructure
- Designing for failure
- Parallel processing
- Designing for performance
- Designing for eventual consistency
- Estimating your cloud computing costs
- Sample application is a typical e-commerce web application
- Learning Single:page Web Application Development
- 嵌入式軟件系統(tǒng)測(cè)試:基于形式化方法的自動(dòng)化測(cè)試解決方案
- Java EE 6 企業(yè)級(jí)應(yīng)用開(kāi)發(fā)教程
- Mastering phpMyAdmin 3.4 for Effective MySQL Management
- SQL for Data Analytics
- Big Data Analytics
- Python編程:從入門(mén)到實(shí)踐
- QGIS By Example
- Android開(kāi)發(fā)案例教程與項(xiàng)目實(shí)戰(zhàn)(在線實(shí)驗(yàn)+在線自測(cè))
- Selenium Testing Tools Cookbook(Second Edition)
- Mastering ROS for Robotics Programming
- Mobile Device Exploitation Cookbook
- C語(yǔ)言程序設(shè)計(jì)
- Java 9 with JShell
- SEO教程:搜索引擎優(yōu)化入門(mén)與進(jìn)階(第3版)