Chapter 5: Application Architecture
In the previous chapters, we thoroughly covered infrastructure. Now, the time has come to discuss your application-related concerns. After all, the purpose of an infrastructure is to host one or more applications. We will only consider Communication as a Service (CaaS), Platform as a Service (PaaS), and Function as a Service (FaaS), which are cloud and cloud-native approaches, in line with modern development techniques. We will not delve into Infrastructure as a Service (IaaS), since it has zero impact on the way applications should be architected, compared to on-premises data centers.
In this chapter, you will learn about the difference between traditional IT practices and cloud-native practices. Additionally, you will learn about the distributed nature of both cloud and cloud-native solutions. Modern solutions are less code-centric because many typical application duties can be offloaded to off-the-shelf services. With serverless, you can even...