Dynamic software rejuvenation in web services: a whale optimization algorithm-based approach

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.

___

  • [1] Beron M, Bernardis H, Miranda E, Riesco D, Pereira M et al. Measuring the understandability of WSDL specification, Web service understanding degree approach and system. Computer Science and Information Systems 2016; 13 (3): 779-807.
  • [2] Grottke M, Nikora A, Trivedi K. An empirical investigation of fault types in space mission system software. In: IEEE Dependable Systems and Networks Conference; 2010. pp. 447-456.
  • [3] Torres E, Callou G, Andrade E. A hierarchical approach for availability and performance analysis of private cloud storage services. Computing 2018; 100 (6): 621-644.
  • [4] Yang M, Min G, Yang W, Li Z. Software rejuvenation in cluster computing systems with dependency between nodes. Computing 2014; 96: 503-526.
  • [5] Levitin G, Xing L, Huang H. Optimization of partial software rejuvenation policy. Reliability Engineering & System Safety 2019; 182: 63-72.
  • [6] Mahmood Z, Bowes D, Hall T, Lane P, Petric J. Reproducibility and replicability of software defect prediction studies. Information and Software Technology 2018; 99: 148-163.
  • [7] Masadeh R, Sharieh A, Sliet A. Grey wolf optimization applied to the maximum flow problem. International Journal of Advanced and Applied Science 2017; 14: 95-100.
  • [8] Ning G, Trivedi KS, Hu H, Cai KY. Multi-granularity software rejuvenation policy based on continuous time Markov chain. In: IEEE Workshop on Software Aging and Rejuvenation; Hiroshima, Japan; 2011. pp. 32–37.
  • [9] Fung S, Poon CH, Zheng F. Improved randomized online scheduling of intervals and jobs. Theory of Computing Systems 2014; 55: 202-228.
  • [10] Hu B, Chicano F. Special issue on meta-heuristics for combinatorial optimization. Journal of Heuristics 2018; 24: 239-242.
  • [11] Yang YY, Yang B, Wang SH. A dynamic ant-colony genetic algorithm for cloud service composition optimization. International Journal of Advanced Manufacturing Technology 2019; 102 (1-4): 355-368.
  • [12] Sun D, Chang G, Guo Q, Wang C. A dependability model to enhance security of cloud environment using systemlevel virtualization techniques. In: Proceeding of 1st Conference on Pervasive Computing, Signal Processing and Applications; Washington, USA; 2010. pp. 305-310.
  • [13] Dantas J, Matos R, Araujo J, Maciel P. Eucalyptus-based private clouds: availability modeling and comparison to the cost of a public cloud. Computing 2015; 97 (11): 1121-1140.
  • [14] Araujo J, Matos R, Alves V, Maciel P, Souza F et al. Software aging in the eucalyptus cloud computing infrastructure: characterization and rejuvenation. ACM Journal of Emerging Technology Computer System 2014; 10 (1): 1-22.
  • [15] Guo J, Song X, Wang Y, Zhang B, Li X. The measurement of software aging damage and rejuvenation strategy for discrete web services. Advanced Materials Research 2012; 2: 432-437.
  • [16] Kulkarni P. Software rejuvenation and workload distribution in virtualized system. International Journal of Innovated Research in Computer and Communication Engineering 2015; 3 (6): 5966-5973.
  • [17] Torquato M, Umesh IM, Maciel P. Models for availability and power consumption evaluation of a private cloud with VMM rejuvenation enabled by VM live Migration. Journal of Supercomputing 2018; 74 (9): 4817-4841.
  • [18] Ghayathri J, Pannirselvam S. Categorization of web services based on QOS constraint using decision tree classifier. International Journal of Innovative Technology and Creative Engineering 2016; 6 (3): 338-344.
  • [19] Umesh IM, Srinivasan GN. Optimum software aging prediction and rejuvenation model for virtualized environment. Indonesian Journal of Electrical Engineering and Computer Science 2016; 3 (3): 572-578.
  • [20] Mooij A, Eggen G, Hooman J, Wezep H. Cost-effective industrial software rejuvenation using domain-specific models. In: Proceedings of 8th Conference on Theory and Practice of Model Transformations; Berlin; Germany; 2015. pp. 66-81.
  • [21] Sumathi G, Raju R. Software aging analysis of web server using neural networks. International Journal of Artificial Intelligence & Applications 2012; 3: 11-21.
  • [22] Nivetha SK, Asokan R. Energy efficient multiconstrained optimization using hybrid ACO and GA in MANET routing. Turkish Journal of Electrical Engineering & Computer Sciences 2016; 24: 3698-3713.
  • [23] Liu M, Wang L, Gao L, Li H, Zhao H et al. A Web Service trust evaluation model based on small-world networks. Knowledge-Based Systems 2014; 57: 161-167.
  • [24] Baek S, Lee J, Lee B. Improving fault traceability of web application by utilizing software revision information and behavior model. KSII Transactions on Internet and Information Systems 2018; 12 (2): 1-20.
  • [25] Gupta R, Kamal R, Suman U. A QoS-supported approach using fault detection and tolerance for achieving reliability in dynamic orchestration of web services. Journal of Information Technology 2018; 10 (1): 71-81.
  • [26] Meng H, Liu J, Hei X. Modeling and optimizing periodically inspected software rejuvenation policy based on geometric sequences. Reliability Engineering and System Safety 2015; 133: 184-191.
  • [27] Machida F, Miyoshi N. An optimal stopping problem for software rejuvenation in a job processing system. In: Workshop on Software Reliability Engineering; Washington, USA; 2015. pp. 139-143.
  • [28] Ning G, Zhao J, Lou Y, Alonso J, Matias R et al. Optimization of two-granularity software rejuvenation policy based on the Markov regenerative process. IEEE Transactions on Reliability 2016; 65 (4): 1630-1646.
  • [29] Cotroneo D, Iannillo AK, Natella R, Pietrantuono R, Russo S. The software aging and rejuvenation repository. IEEE Transactions on Software Reliability Engineering 2015; 2: 108-113.
  • [30] Dohi D, Okamura H, Trivedi KS. Optimizing software rejuvenation policies under interval reliability criteria. In: Proceedings of 9th Conference on Ubiquitous Intelligence and Computing; Fukuoka, Japan; 2012. pp. 478-485.
  • [31] Agepati R, Gundala N, Amari S. Optimal software rejuvenation policies. In: Reliability and Maintainability Symposium; Orlando, FL, USA; 2013. pp. 341-347.
  • [32] Kaur C, Arora S. Chaotic whale optimization algorithm. Computational Design and Engineering 2018; 5: 275-284.
  • [33] Tanyildizi E. A novel optimization method for solving constrained and unconstrained problems: modified golden sine algorithm. Turkish Journal of Electrical Engineering & Computer Sciences 2018; 26: 3287-3304.
  • [34] Karakuzu C. On the performance of newsworthy meta-heuristic algorithms based on point of view fuzzy modeling. Turkish Journal Of Electrical Engineering & Computer Sciences 2017; 25: 4706-4721.
  • [35] Eberhart R, Kennedy J. Particle swarm optimization. In: IEEE International Conference on Neural Network; Perth; Australia; 1995. pp. 1942-1948.
  • [36] Mirjalili S. The ant lion optimizer. Advances in Engineering Software 2015; 88: 80-98.
  • [37] Holland JH. Genetic algorithm. Scientific American 1992; 267: 66-72.
  • [38] Mirjalili S, Lewis A. The whale optimization algorithm. Advances in Engineering Software 2016; 95: 51-67.
  • [39] Gharehchopogh F, Gholizadeh H. A comprehensive survey: whale optimization algorithm and its applications. Swarm and Evolutionary Computation 2018; 48: 1-24.
  • [40] Mohammad HM, Umar S, Rahid T. A systematic and meta-analysis survey of whale optimization algorithm. Computational Intelligence and Neuroscience 2019; 2019: 1-25.
  • [41] Mardukhi F, Nemat Bakhsh N, Zamanifar K, Barati A. QoS decomposition for service composition using genetic algorithm. Applied Soft Computing 2013; 13: 3409-3421.