Virtualizing a Service in ActiveMatrix

In order to take advantage of the services Active Matrix offers, I believe it is always best practice to virtualize services in a service composite.


What does virtualizing a service accomplish?

When creating composites in Active Matrix it is worthwhile virtualizing any SOAP services you intend to use.  By doing so you will be able to create direct AMX references within your other service composites.  In the diagram above I have also added a SOAP reference, which is a proxy to the "real" service.  This proxy would be exposed on the Tibco nodes you deploy the composite to.

The benefits of this approach are:

1. Separation of logic from security policy

I will write more on this in the future, but by virtualizing the service you can apply different security policies to the services via the Tibco Policy Manager product.  Therefore you could have a common security model for clients accessing SOAP services on the Tibco Nodes, and each "real" service would have it's own security policy.

2.  Separation of concerns for service change

Say the "real" service was updated, and this was out of your control - function calls have been changed, or parameters changed etc.  Currently in the approach above the AMX service, the SOAP service and the Service Reference are all using the same wsdl.  Using the above approach, should the Service Reference wsdl be changed, then composites or clients utilizing the existing composites need not change - However, the composite needs to change to use the new Service Reference calls.  This is where a Mediation can be used to perform this task.



0 comments:

Post a Comment