An Effective Fault-Tolerance Technique in Web Services: An Approach based on Hybrid Optimization Algorithm of PSO and Cuckoo Search
Abstract: Software rejuvenation is an effective technique to counteract software aging in continuously-running application such as web service based systems. In client-server applications, where the server is intended to run perpetually, rejuvenation of the server process periodically during the server idle times increases the availability of that service. In these systems, web services are allocated based on the user’s requirements and server’s facilities. Since the selection of a service among candidates while maintaining the optimal quality of service is an Non-Deterministic Polynomial (NP)-hard problem, Meta-heuristics seems to be suitable. In this paper, we proposed dynamic software rejuvenation as a proactive fault-tolerance technique based on a combination of Cuckoo Search (CS) and Particle Swarm Optimization (PSO) algorithms called Computer Program Deviation Request (CPDR). Simulation results on Web Site Dream (WS-DREAM) dataset revealed that our strategy can decrease the failure rate of web services on average 38.6 percent in comparison with Genetic Algorithm (GA), Decision-Tree (DT) and Whale Optimization Algorithm (WOA) strategies.
Keywords: Software aging, software rejuvenation, web service, cuckoo search, particle swarm optimization.
Received January 2, 2020; accepted March 23, 2021