Apache Stratos has a unified communication. A Message Bus is used to communicate between the components in Apache Stratos; while, a Real-time Event Bus is used to handle the complex processes in Apache Stratos. 

Apache Stratos currently uses Apache ActiveMQ as its Message Bus. However, Apache Stratos supports any Message Bus (e.g., WSO2 Message BrokerRabbitMQ, and more) that supports the AMQP messaging technology. The Message Bus uses the AMQP protocol to handle all its communication.

In addition, Apache Stratos uses WSO2 Complex Event Processor as the Real-time Event Bus and uses the Thrift protocol to communicate with the components. The messages sent to the Real-time Event Bus from the Health Publisher will contain the following name value pairs, which have a predefined format based on the Thrift protocol: Cluster ID, Network partition ID, Member ID, Partition ID, Health Description and Value.

As Message Broker uses the standard pub/sub mechanism for communication, it allows anyone to write their own extensions using this mechanism to extend Stratos into their own environment. For example, if someone needs to write a monitoring application, they can subscribe to the Topology topic and draw a topology diagram within the respective service cluster in order to update the dashboard using the given information. 

  • No labels