远程服务调用的方式

远程调用的方式:

  1. RPC:采用C/S方式,跨语言跨平台
  2. webservice:请求应答机制,跨系统跨平台
  3. RMI: 降低客户端与服务器的耦合性,java远程接口调用
  4. JMS:JAVA消息服务,点对点和发布订阅模型

比较RMI和RPC的区别
RMI和RPC之间最主要的区别在于方法是如何别调用的。
在RMI中:

  • 远程接口使每个远程方法都具有方法签名
  • 如果一个方法在服务器上执行,但是没有相匹配的签名被添加到这个远程接口上,那么这个新方法就不能被RMI客户方所调用。

在RPC中:

  • 当一个请求到达RPC服务器时,这个请求就包含了一个参数集和一个文本值,通常形成“classname.methodname”的形式。这就向RPC服务器表明,被请求的方法在为“classname”的类中,名叫“methodname”。
  • 然后RPC服务器就去搜索与之相匹配的类和方法,并把它作为那种方法参数类型的输入。
  • 这里的参数类型是与RPC请求中的类型是匹配的。一旦匹配成功,这个方法就被调用了,其结果被编码后返回客户方。

远程服务调用的方式_RPC