1.yarn源码分析(二)创建Application
yarn源码分析(二)创建Application
深入剖析YARN源码中的码分Application创建机制,核心在于通过client向ResourceManager发起请求。码分这一过程中,码分Hadoop RPC协议作为桥梁,码分确保了客户端与ResourceManager间通信的码分源码运算规则高效与可靠。客户端通过调用接口ApplicationClientProtocol来执行操作。码分悦木之源码以`yarnClient.createApplication()`与`yarnClient.submitApplication(appContext)`为例,码分揭示了创建Application的码分主要流程。
关注点集中于两个关键步骤:初始化Application及提交Application至ResourceManager。码分初始化通过`createApplication()`完成,码分此过程在`YarnClientImpl`类中实现。码分此方法内部调用`getNewApplication()`以获取ApplicationID,码分作为后续操作的码分xnu内核源码分析基础。
获取ApplicationID是码分创建过程的基石,而其实现细节则深藏于`RMClientService`中。码分在理解这一部分时,我们需关注`RMClientService`对于长期对象的聊天加钱包源码服务化处理,以及在`YarnClientImpl`中对`submitApplication`调用的具体实现。
当ApplicationID获得后,便正式步入提交阶段。通过`submitApplication()`,问道源码素材添加客户端与ResourceManager间建立联系,资源分配与应用状态监控得以实现。此过程中的关键在于`rmClient.submitApplication`方法的调用,之后通过轮询`ApplicationReport`来监控提交状态,确保应用成功部署。
深入探究`submitApplication`方法的内部逻辑,我们会发现它在`RMClientService`中调用`rmAppManager.submitApplication`,接着通过事件调度器对新建的Application进行处理。这一处理阶段主要负责保存应用信息,同时引入了YARN中的状态机与事件模型概念,将在后续文章中进行详尽解析。