• DocumentCode
    2438558
  • Title

    Explicit Batching for Distributed Objects

  • Author

    Tilevich, Eli ; Cook, William R. ; Jiao, Yang

  • Author_Institution
    Comput. Sci. Dept., Virginia Tech, Blacksburg, VA, USA
  • fYear
    2009
  • fDate
    22-26 June 2009
  • Firstpage
    543
  • Lastpage
    552
  • Abstract
    Although distributed object systems, including RMI and CORBA, enable object-oriented programs to be easily distributed across a network, achieving acceptable performance usually requires client-specific optimization of server interfaces, making such systems difficult to maintain and evolve. Automatic optimization techniques, including Batched Futures and Communication Restructuring, do not work as well as hand optimization. This paper presents Batched Remote Method Invocation (BRMI), a language-level technique for clients to specify explicit batches of operations on remote objects. We have implemented BRMI for Java as an extension of RMI, with support for batches with array cursors, custom exception handling, conditionals and loops. BRMI allows common design patterns, including Data Transfer Objects and Remote Object Facade, to be constructed on the fly by clients. The performance benefits of batching operations are well known; our evaluation focuses on the usability of explicit batches, but we also confirm that BRMI outperforms RMI and scales significantly better when clients make multiple remote calls. The applicability of BRMI is demonstrated by rewriting third-party RMI client applications to use BRMI.
  • Keywords
    application program interfaces; distributed object management; exception handling; middleware; CORBA; Java; RMI; Remote Object Facade; automatic optimization techniques; batched futures and communication restructuring; batched remote method invocation; client-specific optimization; custom exception handling; data transfer objects; distributed object systems; explicit batching; language-level technique; object-oriented programs; Computer science; Delay; Design optimization; Distributed computing; Java; Middleware; Mobile communication; Network servers; Object oriented modeling; Usability; RMI; batching; distributed objects; middleware; programming abstractions;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Distributed Computing Systems, 2009. ICDCS '09. 29th IEEE International Conference on
  • Conference_Location
    Montreal, QC
  • ISSN
    1063-6927
  • Print_ISBN
    978-0-7695-3659-0
  • Electronic_ISBN
    1063-6927
  • Type

    conf

  • DOI
    10.1109/ICDCS.2009.39
  • Filename
    5158467