Skip to main content

Not So Synchronous RPC: RPC with Silent Synchrony Switch for Avoiding Repeated Marshalling of Data

  • Conference paper
  • 1837 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8314))

Abstract

The Remote Procedure Call (RPC) is a powerful technique for constructing distributed, client-server based applications. In traditional RPC systems, when a remote procedure call fails to return result to the client because of communication failure, client stub usually reinvokes the remote method for expected output if the method is idempotent. This results in repeated marshalling of same data multiple times which is a burden over network if the data is huge. For the first time, we prevent this repeated marshalling by introducing a behavioral pattern that we refer to as usually synchronous, but conditionally asynchronous RPC (CA-RPC). CA-RPC establishes handshaking between client stub and server stub to understand whether connection was failed after demarshalling of data at server stub. If so, the client stub runs a pulling thread to retrieve the result without remarshalling the same data. Besides that, our strategy enhances the performance by a synchrony switch at runtime under some condition. Our results show that CA-RPC has better performance than traditional RPC for cases where data marshalling has significant overhead over low rate data connections.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Birrell, A.D., Nelson, B.J.: Implementing remote procedure calls. ACM Transactions on Computer Systems (TOCS) 2(1), 39–59 (1984)

    Article  Google Scholar 

  2. Ivaki, N., Araujo, F., Barbosa, R.: A middleware for exactly-once semantics in request-response interactions. In: 2012 IEEE 18th Pacific Rim International Symposium on Dependable Computing (PRDC), pp. 31–40. IEEE (2012)

    Google Scholar 

  3. Ananda, A.L., Tay, B., Koh, E.K.: A survey of asynchronous remote procedure calls. ACM SIGOPS Operating Systems Review 26(2), 92–109 (1992)

    Article  Google Scholar 

  4. Budau, V., Bernard, G.: Auto-adaptation to communication environment through dynamic change of communication model. In: ICDCS Workshops, pp. 153–158. IEEE Computer Society (2003)

    Google Scholar 

  5. Deris, M.M., Mamat, A., Surip, M., Khalid, S.: Data replication model for remote procedure call transactions. WSEAS Transactions on Information Science and Applications 2(11), 2009–2015 (2005)

    Google Scholar 

  6. Rossant, C., Fontaine, B., Goodman, D.F.: Playdoh: a lightweight python library for distributed computing and optimisation. Journal of Computational Science (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Zohora, F.T., Uddin, M.Y.S., Moosa, J.M. (2014). Not So Synchronous RPC: RPC with Silent Synchrony Switch for Avoiding Repeated Marshalling of Data. In: Chatterjee, M., Cao, Jn., Kothapalli, K., Rajsbaum, S. (eds) Distributed Computing and Networking. ICDCN 2014. Lecture Notes in Computer Science, vol 8314. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-45249-9_40

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-45249-9_40

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-45248-2

  • Online ISBN: 978-3-642-45249-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics