ellipsis consulting services provide an added partner solution with WebSphere IBM products by combining them in an instrumental solution.
We designed the following solution of HA federated ESB based on WebSphere and other products
WebSphere Data Power – Security gateway and proxy
- Single point of entrance
- Dynamic routing (based on custom xpath solution)
- Assuming WMQ is the transport in the organization.
WebSphere Message Broker (WMB)
- ESB enabler
- Installed in HA solution
- Based on MI (active/active) or third party cluster solution (like Veritas)
- WMQ Cluster for load balancing and data integrity.
- Authorization and authentication for service's consumers.
- Custom development using LDAP.
WebSphere Application Server / Tomcat – Http/Https gateway to the WMB
- Single port for HTTP / HTTPS
Database/WMQ/XML files on disk/Open UDDI
- Registry for the services exposed and consumed by the ESB
custom solution for dynamic service invocation.
If working with remote registry provider, remote database, than the implementation includes cache solution.
- Using internal monitoring system of WMB7 and custom filters and
integration patterns (Correlation token) to complete the solution.
Custom daemon service used to process the events and update the central log.
- WebSphere Business Process Monitor can be used in future stages of the project.
Design chart of the High Availability Solution
The ESB system will be based on two active-active stand-alone VM servers which a Network Load Balancer (NLB) distributes the work between them both.
The HA solution will be based completely on VMWare infrastructure. This means that each of The VM servers are running on a different physical server.
In case of a failure on one of the VM servers it is failed over to a different physical Server. This means that the failed VM server will be down for a couple of minutes While it is restarted. During this fail-over process the healthy VM server handles all.
Design chart of the High Availability Solution for the HTTP Proxy Servlet
In order to support a high availability HTTP WebService listener, an external Message Broker HTTP proxy servlet will be used.
This servlet will receive all the incoming HTTP request and dispatch them on MQ transport layer between the flows.
The proxy servlet will run on each server as a stand-alone tomcat server.
Design chart that illustrates the layers of the ESB infrastructure
The ESB is designed as a single gateway for all services in the organization.
This means that every system that needs to integrate to other systems must invoke a service from the ESB gateway.
The ESB is divided to two layers:
The Services Layer
This is the layer where all the services are deployed and invoked. Each service is deployed on a different MQ queue. Each service can be developed and deployed as a request-response or a datagram service.
The Mediators Layer
This is a layer that connects clients which cannot technically invoke the services directly.
This could happen for a number of reasons:
1. A client which can only invoke an HTTP webservice.
2. A client which cannot work with XML messages.
3. A client which cannot issue MQ or HTTP requests.
4. The client is based entirely on database data.
In any of these cases, the mediator will transform and invoke the service on its behalf.