Client-Server Architecture

Client-server architecture is also known as two-tier architecture, where some services that run on the server are accessed by the client. Client–server model is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients. A layer represents the logical presentation and organization of your software code. A tier on the other end, represents the physical deployment of these layers. In other words, a tier might be a two-tier, three-tier or n-tier architecture, where different pieces of software are deployed at different places.

In client-server architecture, the presentation layer or interface runs on a client machine and a data layer or data service runs on the server, thus creating direct communication between the two. Separating these two components into different locations represents two-tier architecture. When a bank customer accesses online banking services with a web browser (the client), the client initiates a request to the bank's web server. The customer's login credentials may be stored in a database, and the web server accesses the database server as a client. An application server interprets the returned data by applying the bank's business logic and provides the output to the web server. Finally, the webserver returns the result to the client web browser for display.

client-server