Phoenix project: fault-tolerant applications
ACM SIGMOD Record
Recovery guarantees for Internet applications
ACM Transactions on Internet Technology (TOIT)
ACM Transactions on Computer Systems (TOCS)
Log-based recovery for middleware servers
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
EOS: exactly-once E-service middleware
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
Controlled, systematic, and efficient code replacement for running java programs
Proceedings of the 3rd ACM SIGOPS/EuroSys European Conference on Computer Systems 2008
Showing correctness of a replication algorithm in a component based system
IDEAS '08 Proceedings of the 2008 international symposium on Database engineering & applications
Dependability, Abstraction, and Programming
DASFAA '09 Proceedings of the 14th International Conference on Database Systems for Advanced Applications
A Unified Framework for Load Distribution and Fault-Tolerance of Application Servers
Euro-Par '09 Proceedings of the 15th International Euro-Par Conference on Parallel Processing
Log-based middleware server recovery with transaction support
The VLDB Journal — The International Journal on Very Large Data Bases
Elastic SI-Cache: consistent and scalable caching in multi-tier architectures
The VLDB Journal — The International Journal on Very Large Data Bases
Robust web services via interaction contracts
TES'04 Proceedings of the 5th international conference on Technologies for E-Services
D-reserve: distributed reliable service environment
ADBIS'12 Proceedings of the 16th East European conference on Advances in Databases and Information Systems
Hi-index | 0.00 |
Database recovery does not mask failures to applications and users. Recovery is needed that considers data, messages, and application components. Special cases have been studied, but clear principles for recovery guarantees in general multi-tier applications such as web-based e-services are missing. We develop a framework for recovery guarantees that masks almost all failures. The main concept is an interaction contract between two components, a pledge as to message and state persistence, and contract release. Contracts are composed into system-wide agreements so that a set of components is provably recoverable with exactly-once message delivery and execution, except perhaps for crash interrupted user input or output. Our implementation techniques reduce logging cost, allow effective log truncation, and provide independent recovery for critical server components. Interaction contracts form the basis for our Phoenix/COM project on persistent components. Our framework's utility is demonstrated with a case study of a web-based e-service.