Service Oriented Architectures (SOA) based on Web services are gaining high popularity and importance on the internet. Their area of application is not only limited to static and managed networks, but includes also dynamic environments, such as mobile ad-hoc networks. However, the reliablity of an SOA is heavily impacted by the reliablity of the underlying network infrastructure. Especially in mobile ad-hoc networks, where hosts are known to disconnect unpredictably, causing also transient network topologies, the availability of individual Web services is hampered.
The Vienna Dynamic Web Service Replicator aims at this problem by introducing a flexible replication and synchronization mechanism for stateful Web services
Concept and Architecture
The goal of the ViSeRep project is to develop an all-round solution for replication of Web services, which is able to be applied in any kind of TCP-based network. This includes WANs, LANs, Ad-hoc networks, VPNs, etc. and implies the following requirements to such a solution:
- to avoid centralized controls
- to react flexibly and fast to failures and changes in the network
- to hot-deploy Web services dynamically
- to take QoS into consideration while placing replicas (load balancing)
- to monitor the health and availability of Web services
- to synchronize stateful ones
- to produce as little load and network traffic as possible
To achieve this, we are developing a replicator system which must be installed on each host which is providing Web services and participating in the replication process (e.g. accepting deployment of replicas, controlling placement, monitoring availability of services). Its functionality is split into several modules which operate individually, however communicate via the internal database which stores all relevant information about the network environment.
The concept of ViSeRep is based on a global view, where each host is informed about the state of the network, which Web services are deployed on which hosts, which tasks are performed where, and whether itself is expected to perform a task, such as controlling or monitoring. The system is designed to swing itself into a consistent state after changes in the network, such as failures. All information about the environment is collected and propagated by so called active monitors, which are elected from all hosts.
ViSeRep supports synchronization of stateful Web services by providing interfaces for declaring relevant data (e.g. objects, variables) for the service's state, which are synchronized automatically between all replicas in a primary copy manner.
Finally, we do allow the application of customized replication strategies as plug-ins. For instance it is possible to optimize the replica placement mechanism for particular network environments or to extend it by taking into account prediction of disconnections and of changing network topologies.
- Dustdar S., Juszczyk L.: Dynamic Replication and Synchronization of Web Services for High Availability in Mobile Ad-hoc Networks. Service Oriented Computing and Architectures, Springer, forthcoming. March 2007.
- Juszczyk L., Lzowski J., Dustdar S.: Web Service Discovery, Replication, and Synchronization in Ad-Hoc Networks. IEEE Workshop on Dependability in large-scale service-oriented systems (DILSOS). ARES 2006 - The First International Conference on Availability, Reliability and Security The International Dependability Conference - Bridging Theory and Practice, 20 - 22 April 2006, Vienna . April 2006.