WSO2 Message Broker (MB) is a fast, lightweight, user-friendly, open source distributed message brokering system, delivered under the Apache license 2.0.It allows information to flow between disparate application across multiple hardware and software platforms.
WSO2 MB is developed on WSO2 Carbon platform(4.2.0). It is based on the Apache Qpid/Java project.It can be used to configure queues and topics quickly to be used in message routing, message stores, message processing. It also supports transport WS-Eventing.
WSO2 Message Broker is an on-going project and one of the key products of WSO2’s middleware platform product offering.Latest released stable version is 2.2.0. Previous two stable releases were 2.1.1 and 2.1.0. Using the add-ons capability of the WSO2 architecture can be fully customized to fulfil the client’s requirements.
Messaging framework of the WSO2 Message Broker is powered by Andes, which is compatible with (AMQP) (0-91)). Andes is under Apache license and uses Apache Cassandra as its storage. Below is component-based architecture of the WSO2 Message Broker:
Andes Authenticator authenticates users so that the instances inside broker can be given ownership.
Andes broker engine is the core engine of WSO2 message broker which handles AMQP messaging, connection/session creation etc.
Queues provide the facility for users to store messages in an intermediate location sent by an external party, and access them on-demand. Queues implements FIFO messaging with message persistence.
Topics allow subscribing for interested events, and broadcast events published.
WS-Eventing defines the Web services interfaces for notification producers and consumers (including standard message exchanges), to be implemented by service providers that wish to act in these roles, along with operational requirements expected of them. Andes enable WS-Eventing.
Event publisher/subscriber has a set of functions supporting publish/subscribe required by robust, scalable enterprise applications including message brokering and topic-based subscription management.
Cassandra Database is a highly-scalable, eventually consistent, distributed, structured key-value store which acts as the persistence storage for WSO2 MB. This component is packed with WSO2 MB by default, but can be deployed as an external database also. Apache ZooKeeper for message coordination and failure recovery
WSO2 Message Broker has the following key features:
|Standards Compliant||Support for JMS v1.0 and v1.1 API
Support for Advanced Message Queuing Protocol (AMQP) v0.91
|Interoperability||It conforms to AMQP and hence can be a part of a heterogeneous messaging platform of AMQP brokers.
It supports AMQP clients for multiple programming languages like (core) Java, .Net, C, C++, PHP, Ruby, Erlang and many more
|Multi-tenancy||Multi-tenancy inherited from the Carbon platform. More than one ‘tenants’ can have queues of the same name, but will have access to only their specific instance of the queue/topic|
|JMS Message Queuing||One can produce and consume messages with:-FIFO order
Ability to handle large messages
Ability to specify maximum delivery attempts
Failover available with clustered setup
|JMS Publish/Subscribe Model||Use of topics to publish and subscribe to messages
Support interoperability between JMS and WS-Eventing clients
|WS-Eventing||WSO2 Message Broker is compliant with the latest WS-Eventing specification. The underlying JMS engine handles WS-Eventing/JMS synchronization, which enables exposing and consuming your events using two different standard APIs.|
|Distributed, Highly Scalable, Fault-Tolerant and Persistent Message Broker||Apache Cassandra NoSQL storage to store messages persistently and share messages across multiple broker nodes
Apache ZooKeeper for message coordination and failure recovery
|Elastically Scalable Broker Architecture||Broker capacity can be adjusted by adding/removing broker nodes
Brokers can be added/removed at run-time without system restart
|Dead Letter Channel||The Dead Letter Channel(DLC) persists messages that are typically marked for deletion, providing you with a choice on whether to delete, retrieve or reroute the messages from the DLC.|
WSO2 Message Broker includes a set of management services and a user friendly graphical user interface to configure, manage, and monitor the running message broker, allowing you to:
Comprehensive management & monitoring web console with enterprise-level security
Ability to create queues, delete queues and browse queues.
Support to display the messages inside a queue, send a test message to a queue, and purge the messages in the queue
Create, delete and browse topics.
Browse subscription( topic and queue subscriptions)
Register WS subscriptions using event sink URLs
View message statistics and browse the registry
Console to manage the message cluster and to view statistics about the cluster
Display application and system logs, transport and system statics and SOAP tracing.
User management, Role management and logging configuration
Other tool support like java2WSDL, WSDL2Java and WSDL validator.
Be sure your system meets the Installation Prerequisites before proceeding with installation.
Java Development Kit (JDK) is essential to run the product.
WSO2 MB: Download and install WSO2 MB installable for Windows from http://wso2.com/products/message-broker/
New user need to register and login for downloading WSO2 MB.
Once you are logged in, click the Binary button in the upper right corner of the page.
Once you have downloaded the product archive file. Extract the archive file to a dedicated directory for the product, which will hereafter be referred to as .
WSO2 MB web-based management console will run on https://localhost:9443/ by default. Default user name and password is admin & admin and will allow for local system access only.
About the Author
Abiramasundari B is the founder of A2Cart.com. She is an Online Ideapreneur and Entrepreneur. A2Cart is the main blog where you can get all info about Ideas, Technology, Blogging, Top lists in the world, etc.,