Patent ID: 7669209
Filing Date: 2010-02-23
Classification: G06F

Abstract:
1. A remote procedure call (RPC) optimizing method that optimizes RPCs between a server that offers at least one remote procedure, and a client that carries out processing by use of a RPC calling said at least one remote procedure, said remote procedure call optimizing method being implemented on a computer that executes at least one program or one program part, when an interface definition language (IDL) description for said at least one remote procedure is provided, said remote procedure call optimizing method comprising steps of: inputting a source code of said client and said IDL description; detecting from said client source code a processing part that is separable from a remaining instruction sequence of said client source code and that includes a set of RPCs that are highly likely to be executed successively, by detecting an RPC in a repletion loop which does not contain a call function other than the RPC from said client source code; calculating, by said computer, a first procedure causing said server to perform a process equivalent to said processing part; replacing said processing part of said client source code with a call to said first procedure, thereby generating a new client source code; adding an interface of said first procedure to said IDL description, thereby generating a new IDL source code, wherein a new RPC of the call is established in accordance with the new IDL source code and the new client source code; and adding a definition of said first procedure to a source code of said server to allow the new RPC frequently occurring on the client side to be extended to the server to take care of the processing; wherein said step of calculating said first procedure further comprises the steps of: estimating transfer data quantities of input and output arguments necessary for said call to said first procedure; and stopping the replacing of said processing part with said call to said first procedure if the estimated transfer data quantities exceed a predetermined level.