In previous researches in the field of supporting reliability and fault tolerance in web service composition, only low level programming constructs such as exception handling (for example in WSBPEL) were considered. However we believe that the reliability and fault tolerance for composite services must be handled at a higher level of abstraction, i.e. at the workflow level. Therefore a language and technology independent method for fault-tolerant composition of web services is needed. To do this, a fault tolerant workflow is built in which the execution order of the services is determined such that upon a service failure a recovery process with the lowest cost is started. The cost of a service failure includes the cost of failed service and the total costs of roll-baking the previously executed services which are dependent on the failed service. In this article a FSP language is applied to formally specify the workflow
Recently web service composition has become a very cost-effective way to develop business applications. However, owing to the unreliable nature of web services, providing the transactional support in execution of a service composition is an important design requirement. To guarantee the transactional execution of service compositions, a fault-handling routine has to be started once a service failure occurs in order to undo the effect of previously completed services by calling their corresponding compensation operations. Currently this fault-handling mechanism is implemented by means of low-level programming constructs such as exception-handling mechanism in languages such as WS-BPEL. However, since the logic of handling service failures might become very complex in some applications, this concern should be separated from the normal flow of the composition workflow based on the separation of concerns principle. To achieve this, in this study we have proposed an orchestration pattern for building a transactional service composition in which the failure-recovery logic is imposed on the composition workflow by a Labelled Transition System (LTS) as a separate module. It is assumed that each service within the composition is associated with two known transactional properties: (i) a rollback cost that indicates the cost of undoing (compensating) the service and (ii) a failure probability. The transactional logic of the service composition is also specified using the rollback dependencies represented in a rollback graph. An LTS then is generated to schedule the execution of services within the composition based on the composition transactional logic and properties such that upon a service failure, a recovery path with the lowest cost is followed.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.