Client-Server Architecture
Client-Server Architecture is a distributed system structure where tasks or workloads are divided
between clients and servers. Clients request services or resources, and servers provide those services
or resources. This model is widely used in networking and forms the backbone of most modern
applications, including web applications, email systems, and databases.
1. Client:
a. A client is a device or software that requests services or resources from the server.
b. Examples: Web browsers, mobile apps, or desktop applications.
c. Clients initiate communication by sending requests to the server.
2. Server:
a. A server is a device or software that provides services or resources to clients.
b. Examples: Web servers, database servers, or file servers.
c. Servers listen for incoming requests, process them, and send back responses
3. Network:
a. The medium through which clients and servers communicate.
b. Examples: Internet, LAN (Local Area Network), or WAN (Wide Area Network)
Client-Server Architecture Works
1. The client sends a request to the server over the network.
2. The server receives the request, processes it, and performs the necessary actions (e.g.,
retrieving data, executing a task).
3. The server sends a response back to the client.
4. The client receives the response and presents it to the user.
Examples of Client-Server Systems
1. Web Applications:
o Client: Web browser (e.g., Chrome, Firefox).
o Server: Web server (e.g., Apache, Nginx).