Article | REF: H2738 V1

Synchronous communication between programs using RPC and RMI

Authors: Michel RIVEILL, Roland BALTER, Fabienne BOYER

Publication date: February 10, 2001, Review date: June 16, 2016 | Lire en français

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!

Automatically translated using artificial intelligence technology (Note that only the original version is binding) > find out more.

    A  |  A

    Overview

    Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.

    Read the article

    AUTHORS

    • Michel RIVEILL: Professor at the University of Nice - Sophia-Antipolis

    • Roland BALTER: Professor at Joseph-Fournier University, Grenoble, SIRAC Laboratory

    • Fabienne BOYER: Lecturer at Joseph-Fournier University, Grenoble, SIRAC Laboratory

     INTRODUCTION

    There are several models for organizing a distributed application. These include models based on message or event/reaction exchange, which are well suited to asynchronous communication; the client-server model, which relies on a well-known linguistic abstraction, the synchronous procedure call; models using code mobility, such as mobile agent systems; and distributed object models, which give the application designer the illusion of a shared memory of distributed objects. In this article, we focus mainly on the client-server model, as it is the most widespread in industrial products today. We will see, however, that the boundary between the various models for organizing distributed applications is not watertight, and that distributed applications built according to the client-server model quite often borrow properties and mechanisms from other models.

    The article develops the client-server model along two axes: a "development environment" axis, which presents the tools for building applications, in particular the remote procedure call; a "system" axis, which presents the principles for implementing the remote procedure call in a heterogeneous distributed environment. These system services are generally grouped together in a software layer between the application and the operating system, usually referred to by the generic term "middleware".

    The basic client-server model involves a client process, which requests the execution of a service, and a server process, which performs this service. Client and server are located on two machines linked by a communication network. This model was introduced to implement the first distributed applications (file transfer, connection to a remote machine, e-mail, etc.), each implemented by a specific application protocol. In a second stage, a common construct, the remote procedure call, was introduced to provide a general tool for programming client-server applications.

    In this article, we have deliberately grouped together the two existing synchronous communication models, linking a client process and a server process: the model derived from procedural programming, enabling remote procedure calls (RPC: Remote Procedure Call), and its adaptation to object-oriented languages, enabling remote method calls (RMI: Remote Method Invocation). These two models share common foundations, and the latter is a natural evolution of the former, imposed by the development of object-oriented languages.

    You do not have access to this resource.

    Exclusive to subscribers. 97% yet to be discovered!

    You do not have access to this resource.
    Click here to request your free trial access!

    Already subscribed? Log in!


    The Ultimate Scientific and Technical Reference

    A Comprehensive Knowledge Base, with over 1,200 authors and 100 scientific advisors
    + More than 10,000 articles and 1,000 how-to sheets, over 800 new or updated articles every year
    From design to prototyping, right through to industrialization, the reference for securing the development of your industrial projects

    This article is included in

    Software technologies and System architectures

    This offer includes:

    Knowledge Base

    Updated and enriched with articles validated by our scientific committees

    Services

    A set of exclusive tools to complement the resources

    Practical Path

    Operational and didactic, to guarantee the acquisition of transversal skills

    Doc & Quiz

    Interactive articles with quizzes, for constructive reading

    Subscribe now!

    Ongoing reading
    Synchronous communication between programs using RPC and RMI