zoukankan      html  css  js  c++  java
  • Spark 中的 RPC 的几个类

    Spark 中 RPC 部分的涉及了几个类,有点晕,在此记录一下

    1. RpcEndpoint: RPC的一个端点。给定了相应消息的触发函数。保证  `onStart`, `receive` and `onStop` 函数按顺序触发。

    2. RpcEndpointRef: 一个远程的 RpcEndpoint

    3. RpcEnv: RPC的环境。 RpcEndpoint 需要用一个名字在 RpcEnv 进行注册用于接收消息。RpcEnv 将处理从 RpcEndpointRef 或远程发来的消息,然后发送给相应的 RpcEndpoint 。

    4. RpcAddress : 用主机+端口表示的一个 Rpc 地址。

    5. Dispatcher: 消息收发者, 负责把消息路由给相应的 RPC 端点。

    6. RpcEndpointVerifier : 验证 RpcEnv 中某个 RpcEndpoint 是否存在的 RpcEndpoint。

    7. Inbox : 为一个 RpcEndpoint 存储消息并发送给这个 RpcEndpoint 的信箱

    8. NettyRpcHandler: 把收到的 Rpc 消息分发给在 RpcEnv 注册过的 RpcEndpoint(通过 Dispatcher)。会保持所有与之通信的客户端。此类 NettyRpcEnv.scala 中。

    9. TransportServer:高效的、底层流服务。此类中会真正启动 Netty 的服务端

    10. TransportContext:包含了用于创建 TransportServer 和 TransportClientFactory的上下文,并且用于设置 Netty 的 Channel pipelines。

    11. TransportRequestHandler: 注册在 Netty channel 上的  handler。处理从客户端发来的请求。

    12. TransportResponseHandler: 注册在 Netty channel 上的 handler。处理从服务端返回的消息。

  • 相关阅读:
    使用 requests 维持会话
    使用 requests 发送 POST 请求
    使用 requests 发送 GET 请求
    requests 安装
    使用 urllib 分析 Robots 协议
    使用 urllib 解析 URL 链接
    使用 urllib 处理 HTTP 异常
    使用 urllib 处理 Cookies 信息
    使用 urllib 设置代理服务
    按单生产程序发布
  • 原文地址:https://www.cnblogs.com/langfanyun/p/10055643.html
Copyright © 2011-2022 走看看