What is Client-Server Architecture?

The Internet has brought revolutionary change in the world of technologies, bringing the entire globe interconnected. But it follows some specific architecture and structure for communication. The popular is the client-server architecture which is a computing model, where the server hosts, distributes and controls the majority of the resources as well as services to be used by the client. Such structural designs are made up of one or more client systems connected to central or main servers through a network, which we usually know as an Internet connection. All such systems associated with it share computing resources.

The client-server architecture is also termed as a network-computing structure because every request and their associated services are distributed over a network. So now the question is how the thing works? In the client-server architecture, when the client computer sends a request for data to the server through the internet, the server accepts the requested, process it and deliver the data packets requested back to the client. One special feature is that the server computer has the potential to manage numerous clients at the same time. Also, a single client can connect to numerous servers at a single timestamp, where each server provides a different set of services to that specific client.

Let us take a scenario where we require today's weather data for our city. There will be someone, i.e., the server in which periodic updates regarding the weather will be updated and stored. Before the existence of computers, people get such news through the daily newspaper or may listen to the radio broadcasting weather news. In the modern world with computers and servers, there are two participants — first, the users, who scrounge for the weather report and the second is the weather info up-loaders (in the server) who provide the weather-related information. So these two participants are termed individually.

  • First of all, consumers who type specific URLs for weather reports and consume particular information. They are also called customers.
  • Second, there are providers, who upload their data on their system/server to provide information through the Internet. They are also called servers.

So, the clients and servers are two different computers in different parts of the world that are connected through the Internet. However, it is not compulsory to have the client, and the server resides miles apart, rather it could remain within the same building as well.

So, now we as a user can type that specific URL (let suppose any weather-forecasting site) and surf for the weather report. But some additional factors come into action with such online data gathering technologies. Your newspaper or radio uses your local language to give you the weather report and other information. But, for the client-server architecture on the web, specific factors need to be considered:

  • A specific set of languages along with a communication standard, exclusively a protocol for the interaction of two systems. The most popular are the HTTP and HTTPS (Hyper Text Transfer Protocol Secure).
  • Mechanism and protocol for requesting the required aspects from the server. That could be in any structure of formatted data. Mainly implemented and popular formats are done in XML and JSON.
  • Next, the server responds by sending a reply in a structure of formatted data, (usually XML or JSON).

Here are few other related articles for you to read:

Courses
Subscribe Updates via Email

Join 49,000+ W3schools lovers and get all the latest tutorials, programs, algorithms in your inbox.