一,先整理下RPC调用
RPC(Remote Procedure Cal) ,远程过程调用。调用过程代码并不是在调用者本地运行,而是要实现调用者与被调用者二地之间的连接与通信。比较严格的定义是:Remote procedure call (RPC ) is a protocol that allows a computer program running on one computer to cause a subroutine on another computer to be executed without the programmer explicitly coding the details for this interaction. When the software in question is written using object-oriented principles, RPC may be referred to as remote invocation or remote method invocation . RPC 的基本通信模型是基于Client/Server 进程间相互通信模型的一种同步通信形式;它对Client 提供了远程服务的过程抽象,其底层消息传递操作对Client 是不透明的。
二,RemoteTea简介
ONC(Open Network Computer) RPC的java开发包。站点http://remotetea.sourceforge.net/ 主要分成三大部分:
1. jrpcgen 根据.x定义生成java源码
2. Jportmap 端口映射的server,主要是转换TCP/IP协定的port号到RPC program number。对应的是source里面的jportmap.jar
3. oncrpc 主要的实现功能包。
三,简单的示例
四,参数,协议报文分析
五,RPC里面的一些规定
六,一些常见的问题