• DocumentCode
    1670811
  • Title

    A Design Pattern for Reliable HTTP-Based Applications

  • Author

    Ivaki, Naghmeh ; Laranjeiro, Nuno ; Araujo, Filipe

  • Author_Institution
    Dept. of Inf. Eng., Univ. of Coimbra, Coimbra, Portugal
  • fYear
    2015
  • Firstpage
    656
  • Lastpage
    663
  • Abstract
    HTTP is currently being used as the communication protocol for many applications on the web, supporting business and safety-critical services throughout the world. Despite the growing importance, HTTP-based applications are quite exposed to network failures, which can bring in huge losses to the service users and providers, including financial and reputation losses. Several approaches try to achieve reliable communication by using logging and retransmission of whole HTTP messages, which is especially ill-adapted to large messages. Stream-based approaches are more efficient as, upon failure, they transparently resume data transmission from where it stopped. Despite this, designing a stream-based mechanism involves significant challenges, as it is very difficult to know how much data is lost due to failure. In this paper we propose a stream-based mechanism for reliable HTTP communication that is entirely based on HTTP messages and is compatible with existing software. The mechanism is presented as a design pattern and relieves developers from explicitly handling connection failures, providing a standard way for building more reliable applications. Results show that the mechanism is functional, compatible with legacy applications, and that the coding and runtime costs of this design pattern are quite low.
  • Keywords
    Web services; object-oriented methods; object-oriented programming; safety-critical software; software maintenance; transport protocols; HTTP-based application reliability; Web application; connection failure; design pattern; distributed; hypertext transfer protocol; legacy application; safety-critical service; Computer crashes; Protocols; Receivers; Reliability engineering; Servers; Software reliability; Design Pattern; HTTP; Reliable Communication;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Services Computing (SCC), 2015 IEEE International Conference on
  • Conference_Location
    New York, NY
  • Print_ISBN
    978-1-4673-7280-0
  • Type

    conf

  • DOI
    10.1109/SCC.2015.94
  • Filename
    7207412