Enterprise Service Bus (ESB)
ESB is used as a mediator between a number of services, which support application operation inside the informational systems. ESB grants unification of exchange format between services that were created in different environments and provides synchronization and control over the services exchange.
Technologically, ESB relies on the middleware usage. We use the following middleware for ESB development:
- Oracle Service Bus
- WebSphere Message Broker
- Red Hat JBoss Fuse
- Mule ESB
- Microsoft BizTalk
ESB usage guarantees secure and reliable stream processing of messages transmitted between two interacting heterogeneous systems. During the processing the messages are converted from their original format to another unified format used for message exchange between different applications.
A composite application is an array of service components interacting with each other and external services, and united by a common interface.
Cmposite applications provide fast and convenient access to different, not interconnected, data sources, for example: file repositories, document storages, databases (SQL Database, Oracle Database, PostgreSQL).
Development of composite applications is based on implementation of business services – web services that help to solve a number of business processes or tasks. The foundation of development logic of business services that allow integrating with an ESB is a principle of event interception and rapid implementation of the new event processing scenarios. This approach allows to automate manual operations when required, for example, while adding new feature to solutions integrated with an ESB.
To widen possibilities for services interaction and incorporate model with transaction support we develop applications based on BPEL. This language allows to monitor progress ans state of the services.
Primary business services and fragments of existing applications are stored in the metadata repository based on the XML language, which allows services to interact with an ESB.
Example of sucessfully implemented composite solution based on the BPEL is our SmartAE solution, which introduces different options for components' deployment, possibility of using different databases and external systems for message exchange.
Usage of composite applications and integration with an ESB offers a number of advantages:
Peculiarities of the service-oriented architecture considerably boosts possibilities for adaptation and versatile integration of composite applications. Web services unite into one application while they are executed and not during the development process.
Engagement of the open standards for application development provides inependency from computer appliances, as well as possibilities of interaction between different systems that were previously incompatibile with each other.
These advantages allow us to ensure fast launch of new business services within the composite applications for our clients.