Companies, organizations and individuals use Web services to build complex business functionalities. Web services must operate properly in the unreliable Internet infrastructure even in the presence of failures. To increase system dependability, organizations, including service providers, adapt their systems to the autonomic computing paradigm. Strategies can vary from having one to all (S-CHOP, self-configuration, self-healing, self-optimization and self-protection) features. Regarding self-healing, an almost identical tool is communication-induced checkpointing (CiC), a checkpoint contains the state (heap, registers, stack, kernel state) for each process in the system. CiC is based on quasi-synchronous checkpointing where processes take checkpoints relying of control information piggybacked inside application messages; however, avoiding dangerous patterns such as Z-paths and Z-cycles; in such a regard the system takes forced checkpoints and avoids inconsistent states. CiC, unlike other tools, does not incur system performance, our proposal does not incur high overhead (as results show), and it has the advantage of being scalable. As we have shown in a previous work, CiC can be used to address dependability problems when dealing with Web services, as CiC mechanism work in a distributed and efficient manner. Therefore, in this work we propose an adaptable and dynamic generation of checkpoints to support fault tolerance. We present an alternative considering Quality of Service (QoS) criteria, and the different impact applications have on it. We propose taking checkpoints dynamically in case of failure or QoS degradation. Experimental results show that our approach has significantly reduced the generation of checkpoints of various well-known tools in the literature.
Abstract:Complex business processes are based on Web services composition (WSC). Services composition dramatically reduces the cost and risks of building new business applications. Although Web services composition has been widely researched, several issues related to dependability still need to be addressed. In this aspect, one primary concern is to provide fault handling mechanisms. Over the last decade, diverse works tackling fault tolerance for WSC have appeared; most of them are based on the checkpointing paradigm. Some of the works are oriented towards orchestration and others towards choreography. In this work, we present a study regarding the different checkpointing techniques and their applicability to WSC. This study has been done considering the different types of faults (e.g. transient, intermittent and permanent) and modes of recovery (e.g. local vs global). We introduce a novel taxonomy for fault tolerant mechanisms that groups existing works according to integration approaches, fault types and modes of recovery. We present a study of the works, illustrating their advantages and drawbacks. Finally, the paper presents a discussion and outlines several open challenges regarding fault tolerance for WSC.
Leveraging human insight and intuition has been identified as having the potential for the improvement of traditional algorithmic methods. For example, in a video game, a user may not only be entertained but may also be challenged to beat the score of another player; additionally, the user can learn complicated concepts, such as multi-objective optimization, with two or more conflicting objectives. Traditional methods, including Tabu search and genetic algorithms, require substantial computational time and resources to find solutions to multi-objective optimization problems (MOPs). In this paper, we report on the use of video games as a way to gather novel solutions to optimization problems. We hypothesize that humans may find solutions that complement those found mechanically either because the computer algorithm did not find a solution or because the solution provided by the crowdsourcing of video games approach is better. We model two different video games (one for the facility location problem and one for scheduling problems), we demonstrate that the solution space obtained by a computer algorithm can be extended or improved by crowdsourcing novel solutions found by humans playing a video game.
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.