This documentation is for WSO2 ESB version 4.0.3. View documentation for the latest release.

ESB Components

The following scheme visually presents the component-based architecture of the WSO2 ESB.

WSO2 ESB components

Transports

WSO2 ESB supports all the widely used transports including HTTP/s, JMS, VFS and domain specific transports like FIX. A new transport can be added easily using the Axis2 transport framework and plug-in to the ESB. Variety of transports brings variety of message content/payload to the ESB.

Transports components:

  • Message builders - Allow to identify the message by using the content type and make it to common XML infoset. So there are message builders associated with each content type. WSO2 ESB contains message builders for text based content as well as binary content.
  • Message formatters - The opposite partners of the builders. The formatter converts back the message to the original format by referring the content type just before the message handover to the transports. Similar to the transports user can implement new message builders and formatters by using the Axis2 framework.

See Transports.

Endpoints

Endpoints stay as a logical component with the transports. Two sets of endpoints Address and WSDL. An address endpoint can use any available transport to dispatch the messages.

See Endpoints.

Proxy Services

Proxy Services are the virtual services in the WSO2 ESB that implemented using message receivers and open up to accept the messages. A Proxy Service can access using a URL similar to a normal web service address. Proxy Service allows to publish a WSDL to suite for advance usage. Any available transport can be used to receive and send messages from the Proxy Services.

See Proxy Service Samples.

Topics

Topics are another implementation of message recover to handle messages on eventing. Including subscriptions and events.

See Eventing.

Mediators

The power of the WSO2 ESB remains with the comprehensive mediator library that service for different aspects. Using the mediator library one can implement widely used MEPs and EIPs. Writing a mediator is a simple task for a developer because WSO2 ESB provides a healthy framework for that. Mediators can implement using various technologies including Java, scripting and Spring.

See Mediators.

Sequences

The sequences act as the configuration component for the mediators. Sequences allow to organize the mediators to implement pipes and filters pattern.

See Mediation Sequences.

Tasks and Commands

Tasks provide facility to configure scheduled jobs in the WSO2 ESB and tasks allow to execute internal and external commands for mediation.

See Tasks.

QoS Components

QoS components implement reliable messaging and security for the Proxy Services comes with the Apache implementations of those two modules Rampart and Sandesha.

Configuration, Repository/Registry

Configuration is the architecture diagram for an ESB architect. WSO2 ESB has an inbuilt Registry/repository to store the configuration and configuration metadata and it provides the facility to use a remote repository as well.

Management and Configuration GUI

Components that helps to run WSO2 ESB on production environment can find among the components as well. These components make clustering, high availability and load balancing capabilities.

GUI components make the comprehensive management, configuration and monitoring GUI. GUI has done on a layered architecture by separating the backend and frontend concerns. This allows the user to connect to multiple backends using a single GUI console.

The component-based architecture of the WSO2 ESB has enhanced the loosely coupling nature with the usage of OSGi. All the components are built as OSGi bundles.