In this paper, we suggest a method for determining the restarting time for web services to increase availability, known as rejuvenation. We consider different parameters such as number of users, maximum service request number, response time, and throughput of a web service to determine its restarting time. Software rejuvenation is an effective technique to counteract software aging in continuously running applications such as web service-based systems. In these systems, web services are allocated based on the needs of the receivers and facilities of servers. One of the challenges while assigning web services is selecting the appropriate server to reduce faults. Since the selection of a server among candidates while maintaining the optimal quality of service is an NP-hard problem, metaheuristics seem to be suitable. In this paper, we propose dynamic software rejuvenation as a proactive fault-tolerance technique based on the whale optimization algorithm. The threshold for the rejuvenation of each of the web services is considered and training is done based on the features of the service providers as well as the needs of the receivers. The whale optimization algorithm with the criterion of movement radius is utilized for flexibility of web service provider selection. Here, we detect and rejuvenate systems that required rejuvenation before the occurrence of a fault. The simulation results reveal that our strategy can decrease the failure rate by an average of 30 percent in comparison with state-of-the-art strategies and improve the system availability in web services.
Software aging, software rejuvenation, web service, whale optimization algorithm
KALANTARI, KIMIA REZAEI; EBRAHIMNEJAD, ALI; and MOTAMENI, HOMAYUN
"Dynamic software rejuvenation in web services: a whale optimizationalgorithm-based approach,"
Turkish Journal of Electrical Engineering and Computer Sciences: Vol. 28:
2, Article 21.
Available at: https://journals.tubitak.gov.tr/elektrik/vol28/iss2/21