stub 和 skeleton 在远程调用中的概念,中文翻译如下:

  • stub: 存根(代理)

stub 是客户端向服务端发出远程调用请求时自动生成的一个类,它封装了向服务端发送请求和接收返回结果的功能。客户端代码实际调用的是 stub 而不是真正的远程对象。

  • skeleton: 骨架(框架)

skeleton 是服务端为接收客户端请求而自动生成的一个类,它定义了服务端需要实现的远程接口中的抽象方法,但这些方法中仅包含服务端真正处理请求的代码。客户端请求通过 skeleton 被转发到服务端实现类进行处理。

所以简单来说:

  • 存根(Stub)对应客户端,它向服务端发送请求并接收返回结果。

  • 骨架(Skeleton)对应服务端,它定义接口框架并将请求转发给服务端实现类处理。

这两个概念分别表示客户端和服务端自动生成的代理类,目的是封装远程调用细节,让开发人员通过本地方法调用来实现远程调用。

对应 Dubbo源码解析 里面 proxy 层的名词