How Service Virtualization can substitute an Endpoint Registry
A consumer can lookup the address of a Web Service in a registry. This was the initial idea of UDDI shown in lots of diagrams like the following:
Figure1:
Unfortunately UDDI did not gain a lot of popularity. Most of the Web Services do not publish their endpoint addresses into a registry and most of the consumers cannot lookup an address. As a consequence a regisrty for endpoints isn't really an option for most of the deployments. Let's see how we can hide location details of a service without a registry. A service proxy is placed between consumer and provider.
Figure2:
The service is physically deployed at the host server7.predic8.de into an Axis2 Web Service engine.
The address of the service is:
http://server7.predic8.de/axis2/services/articleservice
The service proxy exposes the service at a different location that hides details of the deployment:
http://services.predic8.de/ArticleService
The consumers can bind to this address instand of the physical one.
If the service now moves to a different address only the configuration at the service proxy must be modified.
No modifications are needed at the clients.
Figure3:
The URL of the service proxy never changes. So there is no need to look up an endpoint address. As a consequence we need no registry.