Safe Upgrading without Restarting
نویسندگان
چکیده
The distributed development and maintenance paradigm for component delivery is fraught with problems. One wants a relationship between developers and clients that is autonomous and anonymous. Yet components written in languages such as C++ require the recompilation of all dependent subsystems when a new version of a component is released. The design of Java’s binary format has side-stepped this constraint, removing the need for total recompilation with each change. But the potential is not fulfilled if programs have to be stopped to swap in each new component. This paper describes a framework that allows Java programs to be dynamically upgraded. Its key purpose is to allow libraries that are safe to replace existing libraries without adversely affecting running programs. The framework provides developers with a mechanism to release their libraries and provides clients with the surety of only upgrading when it is safe to do so.
منابع مشابه
Dynamic Aspect Oriented C++ for Application Upgrading Without Restarting
This paper presents an extension to C++ to construct easily upgradeable systems without restarting. With current applications of the Internet, the need for new structures to achieve a high degree of dynamic adaptability becomes apparent. Here we propose to address the issue of modularization of networking services whose implementation would otherwise be scattered in many different places. The a...
متن کاملMagicBeans: a Platform for Deploying Plugin Components
Plugins are optional components which can be used to enable the dynamic construction of flexible and complex systems, passing as much of the configuration management effort as possible to the system rather than the user, allowing graceful upgrading of systems over time without stopping and restarting. Using plugins as a mechanism for evolving applications is appealing, but current implementatio...
متن کاملPainless Plugins
Using plugins as a mechanism for evolving applications is appealing, but current implementations are limited in scope. Plugins are optional components which can be used to enable the dynamic construction of flexible and complex systems, passing as much of the configuration management effort as possible to the system rather than the user, allowing graceful upgrading of systems over time without ...
متن کاملRestarting Automata and Variants of j-Monotonicity
In the literature various notions of (non-) monotonicity of restarting automata have been studied. Here we introduce two new variants of (non-) monotonicity for restarting automata and for two-way restarting automata: left (non-) monotonicity and right-left (non-) monotonicity. It is shown that for the various types of deterministic and nondeterministic (two-way) restarting automata without aux...
متن کاملHierarchies of weakly monotone restarting automata
It is known that the weakly monotone restarting automata accept exactly the growing contextsensitive langauges. We introduce a measure on the degree of weak monotonicity and show that the language classes obtained in this way form strict hierarchies for the various types of deterministic and nondeterministic restarting automata without auxiliary symbols.
متن کامل