RPC automation: making legacy code relevant

  • Authors:
  • Andreas Bergen;Yağız Onat Yazır;Hausi A. Müller;Yvonne Coady

  • Affiliations:
  • University of Victoria, Canada;University of Victoria, Canada;University of Victoria, Canada;University of Victoria, Canada

  • Venue:
  • Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Due to the well-known issues with Remote Proce- dure Calls (RPC), the rather simple idea of modifying legacy applications—that have low spatial locality to the data they need to process—to execute all of their procedures via RPC is not a feasible option. A more realistic and feasible alternative is to provide a self-management mechanism that can dynamically monitor and alter the execution of an existing application by selectively modifying certain procedures to execute remotely when it is necessary to improve spatial locality. In this paper we describe the motivations behind such a self-management mechanism, and outline an initial design. In addition, we in- troduce our vision for the required profiling component of these applications. As such, we introduce the Automated Legacy system Remote Procedure Call mechanism (ALRPC). It automatically converts existing monolithic C applications into a distributed system semi-automatically. Thus automation is a key criterion for successfully competing with existing remote procedure tools for legacy applications and with newer solutions such as SOAP and REST [12], [21]. ALRPC is the core component to convert mono- lithic applications into distributable self-adaptive RPC systems. The empirical results collected from our initial experiments show that our mechanism’s level of automation outperforms existing industry strength tools and improves development time. At the same time our mechanism is able to correctly function with a significant code base and shows acceptable performance in initial tests.