|
Client/server is network architecture which separates the client (often an application that uses a graphical user interface) from the server. Each instance of the client software can send requests to a server or application server. There are many different types of servers; some examples include: a file server, terminal server, or mail server. While their purpose varies somewhat, the basic architecture remains the same. Although this idea is applied in a variety of ways, on many different kinds of applications, the easiest example to visualize is the current use of web pages on the internet. For example, if you are reading this article on Wikipedia, your computer and web browser would be considered a client, and the computers, databases, and applications that make up Wikipedia would be considered the server. When your web browser requests a particular article from Wikipedia, the Wikipedia server finds all of the information required to display the article in the Wikipedia database, assembles it into a web page, and sends it back to your web browser for you to look at. Characteristics of a server: Characteristics of a client: Servers can be stateless or stateful. A stateless server does not keep any information between requests. A stateful server can remember information between requests. The scope of this information can be global or session. A HTTP server for static HTML pages is an example of a stateless server while Apache Tomcat is an example of a stateful server. The interaction between client and server is often described using sequence diagrams. Sequence diagrams are standardized in the UML. Another type of network architecture is known as a peer-to-peer architecture because each node or instance of the program is both a "client" and a "server" and each has equivalent responsibilities. Both architectures are in wide use.
Tiered architecture Due to the lack of useful information you are not advised to use this. A generic client/server architecture has two types of nodes on the network: clients and servers. As a result, these generic architectures are sometimes referred to as "two-tier" architectures. Some networks will consist of three different kinds of nodes: clients, application servers which process data for the clients, and database servers which store data for the application servers. This is called a three-tier architecture. The advantage of an n-tier architecture compared with a two-tier architecture (or a three-tier with a two-tier) is that it separates out the processing that occurs to better balance the load on the different servers; it is more scalable. The disadvantages of n-tier architectures are: Addressing Methods of addressing in client server environments can be described as follows Examples We connect to the Internet. That could be a good example of Client-Server. The web-server serves the webpages to us and we are the client. There are other types of servers like file server, name server, DNS server, printing server e.t.c. Each of them provides prescribed services to their clients who request for them. See also Other network architectures | ||||||||
|
| |||||||||
![]() |
|
| |