What is client-server architecture?
Client-server architecture is a way of organizing how applications work over a network, where some devices (clients) request data or services, and others (servers) provide them.
The simplest way to put it: the client asks, the server answers.
Who is the client and who is the server
Client
A client is a program or device that:
- initiates the request
- wants to get data or a service
Examples of clients:
- a browser
- a mobile app
- an email client
- a program that calls an API
Server
A server is a program or computer that:
- accepts requests from clients
- processes them
- sends back responses
Examples of servers:
- a web server
- a mail server
- a database server
- an API server
How client-server architecture works
A typical scenario:
- The client sends a request (for example: "give me the web page")
- The server accepts the request
- The server processes it (looks up data, checks access)
- The server sends a response
- The client shows the result to the user
Important: the client does not know how the server does its work internally, and the server does not care exactly how the client will display the result.
Real-life example
When you visit a website:
- the browser is the client
- the website is the server
The browser sends an HTTP request The server returns HTML, CSS, images The browser renders the page
Why client-server architecture is used
Main advantages:
- centralized data (everything is stored on the server)
- easy updates (the server changes, clients keep working)
- security (access control lives on the server)
- scalability (it can serve many clients)
What matters for an interview
- Client and server are roles, not necessarily separate computers (one program can be both a client and a server)
- The client always initiates the request
- The server waits for requests and responds to them
Short answer for an interview
A convenient phrasing:
Client-server architecture is an interaction model where client applications send requests and servers process those requests and return responses, providing data or services.
Short Answer
Interview readyA concise answer to help you respond confidently on this topic during an interview.