Master原理剖析与源码分析:注册机制原理剖析与源码分析

来源:互联网 发布:网络约车平台哪家好 编辑:程序博客网 时间:2024/05/16 19:22

1、主备切换机制原理剖析与源码分析

2、注册机制原理剖析与源码分析

3、状态改变处理机制源码分析
4、资源调度机制源码分析(schedule(),两种资源调度算法)
这里写图片描述

//master中注册RegisterApplication   case RegisterApplication(description, driver) => {      // TODO Prevent repeated registrations from some driver      if (state == RecoveryState.STANDBY) {        // ignore, don't send response      } else {        logInfo("Registering app " + description.name)        //创建Application        val app = createApplication(description, driver)        //注册Application        //将Application加入缓存,并加入等待调度的队列        registerApplication(app)        logInfo("Registered app " + description.name + " with ID " + app.id)        //使用持久化引擎持久Application        persistenceEngine.addApplication(app)        //反向向SparkDeploybackend的AppAppClient的Client的Actor发送信息。也就是的RegisteredApplication。        driver.send(RegisteredApplication(app.id, self))        //调用schedule()方法调度。        schedule()      }private def registerApplication(app: ApplicationInfo): Unit = {    val appAddress = app.driver.address    if (addressToApp.contains(appAddress)) {      logInfo("Attempted to re-register application at same address: " + appAddress)      return    }    applicationMetricsSystem.registerSource(app.appSource)   //这里将app的信息加入内存缓存中    apps += app    idToApp(app.id) = app    endpointToApp(app.driver) = app    addressToApp(appAddress) = app    //这里将app加入等待调度的队列    waitingApps += app  }
阅读全文
0 0
原创粉丝点击