Analysis and implementation of software rejuvenation in cluster systems
Proceedings of the 2001 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
TPC-W: A Benchmark for E-Commerce
IEEE Internet Computing
MASCOTS '00 Proceedings of the 8th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems
Statistical non-parametric algorithms to estimate the optimal software rejuvenation schedule
PRDC '00 Proceedings of the 2000 Pacific Rim International Symposium on Dependable Computing
On-Board Preventive Maintenance: Analysis of Effectiveness and Optimal Duty Period
WORDS '97 Proceedings of the 3rd Workshop on Object-Oriented Real-Time Dependable Systems - (WORDS '97)
A Methodology for Detection and Estimation of Software Aging
ISSRE '98 Proceedings of the The Ninth International Symposium on Software Reliability Engineering
Software Rejuvenation: Analysis, Module and Applications
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
Basic Concepts and Taxonomy of Dependable and Secure Computing
IEEE Transactions on Dependable and Secure Computing
A Comprehensive Model for Software Rejuvenation
IEEE Transactions on Dependable and Secure Computing
Nooks: an architecture for reliable device drivers
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
An Experimental Study on Software Aging and Rejuvenation in Web Servers
COMPSAC '06 Proceedings of the 30th Annual International Computer Software and Applications Conference - Volume 01
ACM Transactions on Computer Systems (TOCS)
Performability analysis of clustered systems with rejuvenation under varying workload
Performance Evaluation
Microreboot — A technique for cheap recovery
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Failure Resilience for Device Drivers
DSN '07 Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks
Improving Fault Tolerance by Virtualization and Software Rejuvenation
AMS '08 Proceedings of the 2008 Second Asia International Conference on Modelling & Simulation (AMS)
High-available grid services through the use of virtualized clustering
GRID '07 Proceedings of the 8th IEEE/ACM International Conference on Grid Computing
Using Virtualization to Improve Software Rejuvenation
IEEE Transactions on Computers
Software rejuvenation in embedded systems
Journal of Automata, Languages and Combinatorics
Proactive management of software aging
IBM Journal of Research and Development
Achieving and assuring high availability
ISAS'08 Proceedings of the 5th international conference on Service availability
Membrane: operating system support for restartable file systems
FAST'10 Proceedings of the 8th USENIX conference on File and storage technologies
Software Aging Analysis of the Linux Operating System
ISSRE '10 Proceedings of the 2010 IEEE 21st International Symposium on Software Reliability Engineering
Fast Software Rejuvenation of Virtual Machine Monitors
IEEE Transactions on Dependable and Secure Computing
Phase-based reboot: Reusing operating system execution phases for cheap reboot-based recovery
DSN '11 Proceedings of the 2011 IEEE/IFIP 41st International Conference on Dependable Systems&Networks
Reorganizing UNIX for reliability
ACSAC'06 Proceedings of the 11th Asia-Pacific conference on Advances in Computer Systems Architecture
Experimental evaluation of software aging effects on the eucalyptus cloud computing infrastructure
Proceedings of the Middleware 2011 Industry Track Workshop
A Comparative Evaluation of Software Rejuvenation Strategies
WOSAR '11 Proceedings of the 2011 IEEE Third International Workshop on Software Aging and Rejuvenation
Hi-index | 0.00 |
In this paper we present a comparative experimental study of the main software rejuvenation techniques developed so far to mitigate the software aging effects. We consider six different rejuvenation techniques with different levels of granularity: (i) physical node reboot, (ii) virtual machine reboot, (iii) OS reboot, (iv) fast OS reboot, (v) standalone application restart, and (vi) application rejuvenation by a hot standby server. We conduct a set of experiments injecting memory leaks at the application level. We evaluate the performance overhead introduced by software rejuvenation in terms of throughput loss, failed requests, slow requests, and memory fragmentation overhead. We also analyze the selected rejuvenation techniques' efficiency in mitigating the aging effects. Due to the growing adoption of virtualization technology, we also analyze the overhead of the rejuvenation techniques in virtualized environments. The results show that the performance overheads introduced by the rejuvenation techniques are related to the granularity level. We also capture different levels of memory fragmentation overhead induced by the virtualization demonstrating some drawbacks of using virtualization in comparison with non-virtualized rejuvenation approaches. Finally, based on these research findings we present comprehensive guidelines to support decision making during the design of rejuvenation scheduling algorithms, as well as in selecting the appropriate rejuvenation mechanism.