{'fraction_non_alphanumeric': 0.014557670772676373, 'fraction_numerical': 0.0, 'mean_word_length': 5.79467680608365, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
HARRD: Real-time Software Rejuvenation Decision Based on Hierarchical Analysis under Weibull Distribution

Software rejuvenation are developed to mitigate serious consequences caused by software aging mainly through restarting software systems. As such restart actions will temporarily stop the software service, how to select the restart time precisely becomes the core research issue. Current main-stream machine learning based software rejuvenation methods predict the trend of resource usage of hardware parameters to determine the restart time. However the actual aging status in many software systems are not strongly related to the resource usage of hardware parameters, it is not rigorous to define the aging status with single hardware parameters. In this paper, we propose a novel real-time software rejuvenation decision method, named HARRD, where classic Weibull distribution in the field of reliability analysis is well utilized to simulate and model the state transition process of software aging. Then, based on this model with real-time resource usage of hardware monitoring parameters, and together integrating three model indicators, we construct the rejuvenation decision function using the analytic hierarchy process(AHP) to weight above parameters, which could finally be used as the rejuvenation decision basis for aging software systems. Our rejuvenation decision method could balance the unpredictable factors in software aging process by using accurate simulation models, and consider more indicators for rejuvenation time decision. The experimental results show that the software system based on our proposed method could achieve better software rejuvenation effects in terms of time consumption performance, average task processing speed and system stability.