Open In App

Message based Communication in IPC (inter process communication)

Prerequisites – Cloud computing, Load balancing in Cloud Computing, Inter-process Communication In the development of models and technologies, message abstraction is a necessary aspect that enables distributed computing. Distributed system is defined as a system in which components reside at networked communication and synchronise its functions only by movement of messages. In this, message recognizes any discrete data that is moved from one entity to another. It includes any kind of data representation having restriction of size and time, whereas it invokes a remote procedure or a sequence of object instance or a common message. This is the reason that “message-based communication model” can be beneficial to refer various model for inter-process communication, which is based on the data streaming abstraction. Various distributed programming model use this type of communication despite of the abstraction which is shown to developers for programming the co-ordination of shared components. Below are some major distributed programming models that uses “message-based communication model”.

Message-based communication is a type of IPC (Inter-Process Communication) mechanism in which processes or threads communicate with each other by sending messages. In this approach, a process sends a message to another process using a message queue, and the receiving process reads the message from the queue. Message-based communication has several advantages and disadvantages, which are outlined below:

Advantages of message-based communication:

  1. Simplicity: Message-based communication is a simple and straightforward approach to IPC, as messages can be easily sent and received between processes.
    Asynchronous communication: Message-based communication allows for asynchronous communication, as the sender and receiver do not have to be active at the same time.
    Reliability: Message-based communication can ensure reliable delivery of messages, as messages can be re-sent until they are received by the receiver.
    Scalability: Message-based communication can be used to implement large-scale distributed systems, as messages can be routed between multiple computers or networks.

Disadvantages of message-based communication:

  1. Overhead: Message-based communication can introduce overhead, as the creation and management of message queues can consume system resources.
  2. Complexity: Implementing message-based communication requires careful design and management of message queues, which can be complex and time-consuming.
  3. Latency: Message-based communication can introduce latency, as messages may have to wait in the queue until they are received by the receiver.
  4. Limited data size: Message-based communication is typically limited in the size of data that can be sent in a message, which can be a disadvantage for some types of applications.
    Overall, message-based communication is a useful mechanism for IPC that can be used to implement a wide variety of distributed systems. However, it is important to carefully consider the advantages and disadvantages of message-based communication, and to design and implement message queues with care, in order to ensure that the system performs well and meets the needs of the application.
Article Tags :