Open In App

Server Management in Distributed System

In this article, we will go through the concept of how server management is done in Distributed Systems in detail.

Server Management:

The implementation of a distributed file service is carried out by Stateful or Stateless file servers.





The selection of a Stateful Server or Stateless Server relies on the application.

Difference between Stateless and Stateful Servers:

Sr. No. Parameters Stateless Server Stateful Server
1.  Definition The server does not need to maintain the state of a process in stateless protocols. The server must save the status of a process in stateful protocols.
2.  Examples HTTP (HyperText Transfer Protocol), UDP (User Datagram Protocol), DNS (Domain Name System), SMTP (Simple Mail Transfer Protocol), etc. FTP (File Transfer Protocol), Telnet, TCP (Transmission Control Protocol).
3. Server Constraints The server is not required to maintain information. The server must maintain the status as well as session information. 
4.  Dependency The client and server are independent as no state is required to be maintained and hence, loosely coupled. The client and server are bound together as they rely on each other.
5.  Design It is simple to design. It is complex to design as the server handles a lot of functionality and moreover, data also needs to be retained.
6. Handling of Requests Requests in Stateless contain everything they need and are processed in a “request” and a “response” pair.  Requests are constantly dependent on the server-side status while using Stateful.
7. Architecture Scaling Scaling of stateless architecture is easy. Scaling stateful architecture is difficult.
8. Transaction Handling The handling of transactions is quicker in stateless servers. The handling of transactions is relatively slower in stateful servers.
9.  Crash Management  Stateless protocols operate better in the event of a crash since there is no state that needs to be restored. It is simple to restart a server that failed during the crash. The crash management is difficult here because the server maintains the status and session information and when a crash occurs, all of the information is lost. So, it is difficult to recover after a crash.
10. Server Usage Different servers can handle different information at a given time. Every request must be processed by the same server.

 Why  Use Stateless Servers?

There are many reasons for opting for stateless servers as discussed above in differences also:

Server Creation Semantics:

A server process is independent that makes a Remote Procedure Call to a client because client and server processes have different lifespans, run on different computers, and have different address spaces. On-demand server processes are created or maybe created and installed before their client processes. The following are the RPC servers based on the life span:

The stateful model, in which clients rely on servers for the majority of computing operations. Its difficulty to scale is the reason for this.  Furthermore, technological advancements, paired with the development of powerful client computers, aided in the transition to a stateless preferred environment. This freed up developers’ time and energy to focus on product development rather than technical difficulties like server software implementation, which are frequent in stateful systems.


Article Tags :