The Guide to Web Application Architecture
A modern web app consists of the complex software structure where a multitude of components are interconnected and set in motion subsequently. All such components — be it a graphic interface perceived by the user in a browser or a database storing and giving out the required data further operated by an app — are, usually, divided between each other physically. To set the connection between them, special network protocols are used. From the developer’s point of view, the proper choice of the model for such interconnections as well as the way an app is subdivided into components as a whole dictate the level of end-user experience and simplicity of technical support for a finished solution. In particular, multimedia web apps require maximum fail-safety capacities (due to the need to deliver quite voluminous and sensible to downtimes content) while microservice solutions often meet sufficient development requirements when implemented based on the two-level software architectural pattern. In the article, we discuss the four major architecture patterns to make it all clear for you: Client-Server, Layered, Model-View-Controller, and Peer-and-Peer.
https://jelvix.com/blog/guide-to-web-application-architecture