Category Archives: Uncategorized

Adding the dynamism of events to a Master Data Management solution

The WSO2 platform provides all the capabilities to address two common architecture patterns — Master Data Management (MDM) and Event Driven Architecture (EDA).

The integration of these two powerful ideas allowed a System Integrator (and WSO2 customer) to refactor and modernize their architecture in their latest release, and roll that out smoothly to their customers.  The new architecture centered around the MDM and EDA patterns.  Built-in facilities enabling MDM and EDA patterns played a factor in choosing the WSO2 SOA-based Middleware Platform.

The existing application software includes a number of RDBMS data repositories, exposed through application-level APIs from various systems. Requirements for the new architecture included the reuse of the existing data as well as support for updates to the existing data stores from messages originating in the new architecture. Even though existing data was reused, the existing data model was not proving a good fit with the new architecture. Therefore converting the data to a new data model also became a key requirement. The MDM pattern fulfilled these two requirements by connecting to the data repositories and converting the data into a universal data model.

The WSO2 platform sports a number of features useful for implementing MDM.  The OxygenTank article Implementing MDM Patterns on WSO2 SOA Platform describes a pattern called Service Adapters that applied neatly to this situation, leveraging the legacy APIs for data access.  The adapters were coded in Java and deployed in the WSO2 Application Server.  WS-Transfer facilitated transformation of the data models and exposed the new universal data model through XML Web Services.

image

The message exchange pattern (MEP) used to integrate the application components was pub-sub (publish and subscribe), bringing EDA into the picture. Pub-Sub extends the loose coupling of a SOA, allowing new data sources to be integrated by a simple publish/subscribe operation.  The WSO2 Enterprise Service Bus’s native support for the WS-Eventing standard allows it to act as an event broker, while extending mediation capabilities to any pub-sub interaction as well as providing all the QoS controls available within the ESB.

By introducing a controller into the architecture, more sophisticated event flows are possible, controlled by business processes and rules. In this architecture, the controller was implemented by using WSO2 Application Server and WSO2 Business Process Server, and combined standard JAX-WS based services and rules defined in BPEL.

Dynamic discovery emerged as a key requirement to avoid tightly coupling of service endpoints.  The combination of WS-Discovery support and a compatible service deployer, endpoint availability is published as each service is deployed.

Integration of a Registry/Repository was identified as a key requirement to store service and configuration metadata as well as to enable dynamic metadata look-up. These facilities are provided by the WSO2 Governance Registry, which in addition to a metadata store hosts the topic store for topic-based event subscriptions.

image

The logical architecture solution above maps to a variety of deployment patterns for different clients of the system integrator, meeting their individual demands for scalability, high availability, infrastructure constraints, and so forth.

The application of aspects of Event Driven Architecture to the problem of Master Data Management adds flexibility and increases the advantages of loose coupling so prized in modern SOA solutions.  We hope the pattern described above gives you some ideas of how your current integration challenges can be approached.

Asanka Abeysinghe, Director of Solutions Architecture
Asanka’s blog: http://asanka.abeysinghe.org/

A WSO2 First: Multi-Tenant Tomcat WebApps

In a previous post I talked about the advantages of unifying Web Applications and Web Services or APIs into a single server runtime.  And about some of the advantages of making Apache Tomcat part of the WSO2 Carbon family.

Tomcat LogoBut there possibly isn’t any aspect of a Carbon-based Tomcat more exciting than combining it with the power of WSO2 Stratos, the WSO2 Carbon-based cloud middleware platform.  Stratos provides hosting on the cloud with all the advantages that implies: the agility of instant self-service provisioning, elasticity to automatically scale up with business peaks and down as demand subsides, the efficiencies of multi-tenant architecture, and greater intelligence through full monitoring and metering.

As a WSO2 Carbon family product, this means Tomcat Web applications can be deployed on the cloud!  Either on your private cloud infrastructure, or on the WSO2 public cloud, relieving your businesses of the chore of maintaining their own IT infrastructure.

We’re very proud to offer the first commercial release of Tomcat available as either server-based software, a virtual machine image, or as a multi-tenant platform as a service (PaaS) on private or public clouds.

You can try the Tomcat WebApp samples, deploy your own WebApp, and more at https://appserver.cloud.wso2.com.

Afkham Azeez, Senior Architect and Senior Manager

Azeez’s blog: http://blog.afkham.org/