(一)远程服务-基本概念

  • 本地方法调用
    本地方法调用是指同一个应用中的两个代码块之间的执行流交换

  • RPC
    RPC ( remote procedure call)远程过程调用。RPC 是一个概念,表示客户端通过某种方式调用远程服务器上的服务。从表面上看,远程服务上的方法可以被按照本地方法一样调用。客户端和服务器在整个远程过程调用中保持同步和代码阻塞,直到整个调用过程完毕。

  • RPC 的实现方式(Spring 中)

RPC 模型适用场景
RMI (远程方法调用)不考虑网络限制时( 例如防火墙) , 访问/发布基于Java的服务
Hessian或Burlap考虑网络限制时, 通过HTTP访问/发布基于Java的服务。 Hessian是二进制协议, 而Burlap是基于XML的
HTTP invoker考虑网络限制, 并希望使用基于XML或专有的序列化机制实现Java序列化时, 访问/发布基于Spring的服务
JAX-RPC和JAX-WS访问/发布平台独立的、 基于SOAP的Web服务
  • Spring Bean
    在 Spring 模型中,本地服务都是作为 Spring Bean 存在的,换而言之,Spring Bean 是Spring 服务的通用的基本调用单位。

  • 远程服务和代理服务 Bean
    Spring Bean 是Spring 模型中本地服务的基本调用单位,而 Spring 体系一直致力于标准化工作,以上的 RPC 模型都可以将服务器的远程服务委托给本地的代理工厂 Bean,从而使得远程服务成为本地 Spring Bean 中的一员。客户端直接调用 代理工厂Bean,就像直接调用了本地服务,而代理工厂将服务指向了远程服务。

无论我们开发的是使用远程服务的代码, 还是实现这些服务的代码, 或者两者兼而有之, 在Spring中, 使用远程服务纯粹是一个配置问题。 我
们不需要编写任何Java代码就可以支持远程调用。 我们的服务bean也不需要关心它们是否参与了一个RPC( 当然, 任何传递给远程调用的
bean或从远程调用返回的bean可能需要实现java.io.Serializable接口) 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值