liveBook · Manning

Multi-tier application

As explained in Building Web APIs with ASP.NET Core

A layered system organizes communication through intermediary components that hide or mediate the services behind them.

A multi-tier application places components between clients and the services that fulfill their requests. In a RESTful web API, intermediary HTTP services or filters can improve security, performance, and scalability. section 1.1.4

Consider a board-game API that handles incoming HTTP requests and data exchange while a database management system (DBMS) provides the data. The API and DBMS can run on different servers. Adding a reverse proxy and a content delivery network (CDN) places two more layers between clients and the API server. section 3.1.4

Each added layer has a practical job:

  • A reverse proxy can cache responses and support load-balancing techniques that improve horizontal scalability. section 3.1.4
  • A CDN adds caching, reduces latency across regions, and can lower server bandwidth use. section 3.1.4

This is an architectural plan, not a completed deployment: implementing the reverse proxy and CDN is deferred until production deployment. section 3.1.4

Figure 3.3 Updated MyBGList SOA using CDN and reverse proxy
03-03

The architecture diagram places the CDN and reverse proxy between clients and the board-game API within the wider service-oriented system. section 3.1.4

How Building Web APIs with ASP.NET Core covers it

How deep it goes
Explains component roles and expected benefits, but defers implementation until production deployment.
Examples
Illustrates the pattern with a board-game API, its DBMS, and proposed reverse-proxy and CDN layers.
What you can do after
Evaluate/understand it by identifying what each intermediary contributes before planning a production deployment.
How it connects
Connects REST and service-oriented architecture with reverse proxies, CDNs, caching, and load balancing.

Also explained in

Compare how 7 books explain multi-tier application →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Building Web APIs with ASP.NET Core. The section links point to the parts of the book it draws on.