Automatic Proxy Generation and Load-Balancing-Based Dynamic Choice of Services

The paper addresses the issues of invoking services from within workflows which are becoming an increasingly popular paradigm of distributed programming. The main idea of our research is to develop a facility which enables load balancing between the available services and their instances. The system consists of three main modules: a proxy generator for a specific service according to its interface type, a proxy that redirects requests to a concrete instance of the service and load-balancer (LB) to choose the least loaded virtual machine (VM) which hosts a single service instance. The proxy generator was implemented as a bean (in compliance to EJB standard) which generates proxy according to the WSDL service interface description using XSLT engine and then deploys it on a GlassFish application server using GlassFish API, the proxy is a BPEL module and load-balancer is a stateful Web Service.