zoukankan      html  css  js  c++  java
  • spark源码解析2-worker启动流程

    1. 在worker启动时,通过脚本start-slave.sh脚本中调用main()
    2. 在main()中封装参数,调用startRpcEnvAndEndpoint()创建RpcEnv
    3. startRpcEnvAndEndpoint()中创建RpcEnv和endpiont,并实例化Worker,执行Worker的onStart()方法
    4. 在onStart()方法中主要流程:
      1. 创建工作目录
      2. 启动shuffleservice
      3. 创建worker webui
      4. 调用registerWithMaster()向master注册worker
    5. registerWithMaster()方法中"
      1. 首先worker回向master注册自己
      2. 其次会启动定时任务,不断的向自己发送caseclass,调用reregisterWithMaster()
    6. reregisterWithMaster()方法中,如果之前的注册失败,会重复(15、16次)注册自己
    7. 如果在registerWithMaster()中注册成功,master会向worker发送case object RegisteredWorker,worker接收到消息后,会定时向master发送心跳
    8. master接收到心跳信息后,会修改worker的上次心跳时间

  • 相关阅读:
    printf和sprintf
    操作数、运算符、表达式
    全自动加法机
    Ascll、GB2312、Ansi
    数组
    循环
    编程命名规范
    浮点数及缺陷
    Android编码规范
    RGB着色对照表
  • 原文地址:https://www.cnblogs.com/haoyy/p/6201914.html
Copyright © 2011-2022 走看看