Open In App

Distributed Application Paradigms

Improve
Improve
Like Article
Like
Save
Share
Report

Paradigm means an idea or pattern. In this article, we will see the classification of the paradigms for distributed applications. 

Level of Abstraction: 

Message Passing Paradigm: 
It is a basic approach for Inter Process Communication. The data exchange between the sender and the receiver. A process sends a message representing the request. The receiver receives and processes it then sends back as reply.  

Operations: send, receive
Connections: connect, disconnect 

Client Server Paradigm: 
In this approach, the server acts as a service provider, the client issues the request and wait for the response from the server. Here server is dump machine. Until client make a call server doesn’t communicate. Many Internet services are client-server applications.  

Server Process: listen, accept
Client Process: issue the request, accept the response 

Peer to Peer Paradigm: 
Direct communication between processes. Here is no client or server, anyone can make request to others and get the response. 

Example: A well-known example of a peer-to-peer file transfer.  

Message System Paradigm: 
Message system act as intermediate among independent processes. It is also act as switch through which process exchange messages asynchronously in decoupled manner. sender sends message which drop at first in message system then forward to message queue which is associated with the receiver. 

Types: 

  • Point to Point message model
  • Publish/Subscribe model

Point to Point message model: 
Forward message from sender to receiver via message system. The message system keeps repository of messages and directly forward messages to the receiver’s message queue. Unlike the basic message-passing model, it provides asynchronous message passing. 

Public/Subscribe Model: 
In this model, each message is associated with a specific topic or event. whoever interest in the messages can subscribe to the event before it occurs. When the waited event occurs, the process publishes the message with an event or topic. Then the message system distributes messages to all the subscribers. 
Example: IBM MQ service, Microsoft Message Queuing 

Remote Procedure Call: 

Local procedure call happens only within a local machine. Remote Procedure call(RPC) happens between two remote machines. 

RPC involves two independent processes that may reside on a separate machine. Process A wishing to make a request process B for procedure call with a list of arguments. Process B operates the procedure and return values to Process A. 

Distributed Object Paradigm: 
Application access the objects distributed over the network. Objects provide methods, through the invocation of which an application obtains access to services. 

Types: 

  • Remote Method Invocation (RMI)
  • Object Request Broker
  • Object Space

Remote Method Invocation: 
RMI is more like RPC but major difference is, it is object-oriented approach. A process invokes the methods in an object, which may reside in a remote host. Arguments may be passed with the invocation.  

Object Request Broker (ORB): 
ORB acts as mediator between objects and object requester, it allows requester can access multiple remote objects. An application issues requests to an object request broker (ORB), which directs the request to an appropriate object that provides service. 

Example: CORBA 

Object Space: 
Objects are placed as logical entities in the space called object space. Providers place their objects entries in the objects space. Requests who subscribe can access the objects.  

Mobile Agent Paradigm: 
Mobile agent starts from originated host and transports over host to host. At each host, the agent can access the services or resources to complete the mission. 

Network Service Paradigm: 
All the service objects are register with global directory service. If process want a service can contact directory service at runtime. Requestor is provided a reference, using which process interact with service. services are identified by the global unique identifier. 
Example: Java Jini 

Collaborative Application Paradigm: 
processes participate in a collaborative session as a group. Each participating process may contribute input to part or all of the group. 

Types:  

  • Message based groupware paradigm
  • Whiteboard based groupware paradigm

Message based groupware paradigm: 
A host can multicast to send data to all hosts in the group or part of the hosts in the group. 

Whiteboard based groupware paradigm: 
The information is available on the public board in the group whoever in the group can access it. Anyone can read or write data to a shared display 

 


Last Updated : 03 Sep, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads