Improving the survivability of RESTful Web applications via declarative fault tolerance

نویسندگان

  • John Edstrom
  • Eli Tilevich
چکیده

The popular Representational State Transfer (REST) architectural style for constructing web applications offers simplicity and scalability advantages. However, to improve the survivability of a RESTful application, programmers commonly find themselves writing vast amounts of non-trivial, ad-hoc fault-tolerance code. Network volatility, HTTP server errors, service outages—all require custom fault handling code, whose effective implementation requires considerable programming expertise and effort. These implementation impediments hinder the survivability of RESTful applications—without proper fault tolerance functionality, these applications are likely to crash when experiencing faults. To provide a systematic and principled approach to handling faults in RESTful applications, this article presents FT-REST—an architectural framework for specifying fault tolerance functionality declaratively and then translating these specifications into platform-specific code. FT-REST encapsulates fault tolerance strategies in XML-based specifications and compiles them to modules that reify the requisite fault tolerance. To validate our approach, we have applied FT-REST to enhance several realistic RESTful applications to withstand the faults described in their FT-REST specifications. As REST is said to apply verbs (HTTP commands) to nouns (URIs), FT-REST enhances this conceptual model with adverbs that render REST reliable via reusable and extensible fault tolerance. Copyright c © 2013 John Wiley & Sons, Ltd.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Improving the palbimm scheduling algorithm for fault tolerance in cloud computing

Cloud computing is the latest technology that involves distributed computation over the Internet. It meets the needs of users through sharing resources and using virtual technology. The workflow user applications refer to a set of tasks to be processed within the cloud environment. Scheduling algorithms have a lot to do with the efficiency of cloud computing environments through selection of su...

متن کامل

Fault-tolerant timestamp-based two-phase commit protocol for RESTful services

Service-oriented architecture provides interoperability and weak coupling features for software development. Representational state transfer (REST) is an architectural style that has attracted attention in the SOA domain as it allows the development of Web services based on original principles of the World Wide Web. Unlike Web service specifications, which are based on Simple Object Access Prot...

متن کامل

An SBVR Framework for RESTful Web Applications

We propose a framework that can be used to produce functioning web applications from SBVR models. To achieve this, we begin by discussing the concept of declarative application generation and examining the commonalities between SBVR and the RESTful architectural style of the web. We then show how a relational database schema and RESTful interface can be generated from an SBVR model. In this con...

متن کامل

Toward Data-driven Programming for RESTful Linked Data

Applications are increasingly focused on the use and manipulation of data resources distributed on the Web. Consequently REST gains popularity with its resource-centric interaction architecture and flexibility enabled by hypermedia controls, i.e., links between resources. The natural extension of Linked Data with RESTful manipulation possibilities for resources can bring advantages that can be ...

متن کامل

The Willow Architecture: Comprehensive Survivability for Large-Scale Distributed Applications

The Willow architecture is a comprehensive approach to survivability in critical distributed applications. Survivability is achieved in a deployed system using a unique combination of (a) fault avoidance by disabling vulnerable network elements intentionally when a threat is detected or predicted, (b) fault elimination by replacing system software elements when faults are discovered, and (c) fa...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Concurrency and Computation: Practice and Experience

دوره 27  شماره 

صفحات  -

تاریخ انتشار 2015