Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

gdding/MARC

Repository files navigation

# -----------------------------------------------------------------------------------------------------------------------
# MARC是一个分布式的运行框架,由三个部分组成:Master节点、Result节点和Client节点。MARC中的几个字母分别表示:
# M - Master, A - Application, R - Resut, C - Client。其具体的功能简要描述如下。
# 【Master】
# Master是整个框架的"管理者",在整个框架中只有一个Master节点(可配置一个备份节点),其职责是:
# (1) 接收各Client节点、Result节点的注册请求和运行状态信息;
# (2) 在Client节点需要任务时自动调用用户编写的任务生成程序,并将其生成的任务下发给Client节点;
# (3) 将任务执行结果的存储服务地址告知Client节点(即相应的Result节点地址);
# (4) 监控各个Client节点的任务执行情况,等等。
# 【Application】
# Application为用户的应用程序。MARC系统只是一个运行框架,具体用来干什么,是用户应用程序所赋予的功能。具体来说,
# MARC框架的使用者可按照MARC提供的接口规范分别编写部署在Master节点上的"任务生成程序"、部署在Client节点上的
# "任务执行程序"和部署在Result节点上的"结果处理程序",这三个用户应用程序与MARC框架共同组成了一个基于任务的分布
# 式运行系统,其基本流程是:"任务生成->任务下载->任务执行->结果回传->结果存储",具体地:
# (1) 任务生成:在Master节点,MARC框架会自动监测每个Client节点的任务执行状况,当某个Client节点需要任务时,
# MARC框架会自动调用用户的"任务生成程序"。
# (2) 任务下载:当Client节点从Master节点获知其任务生成完成后,Client节点自动从Master节点下载生成的任务数据。
# 为提高传输效率,任务数据首先在Master节点经过压缩处理,Client节点接收完成后再进行解压。
# (3) 任务执行:Client节点得到任务后,MARC框架会自动调用用户的任务执行程序(以异步、非阻塞的方式执行)。
# (4) 结果回传:Client节点的任务执行程序运行完成后,MARC框架会自动将任务执行的结果上传到Result节点(Master节点
# 会告知Client节点其任务执行结果应该上传到哪个Result节点)。
# (5) 结果处理:Result节点在接收完Client节点上传的任务执行结果后,会自动调用用户的"结果处理程序",完成比如结果
# 入库或其他的处理工作。
# 以上各个过程之间是可以并行进行的,如可设置为异步上传策略,这样当任务执行完成后,可以马上获取新任务而不必等待结果上传完毕。
# 【Result】
# Result节点是整个框架的结果收集和处理端,在整个MARC框架中可以是一个或者多个节点。负责接收Client节点上传的任务
# 执行结果,并自动调用用户的结果处理程序完成对任务执行结果的处理工作。
# 【Client】
# Client节点是MARC框架中的任务执行端,在整个MARC框架中可以部署多个Client节点。负责执行Master节点下发的任务。
# 
# Author: Gordon Ding, gdding@hotmail.com
# -----------------------------------------------------------------------------------------------------------------------

About

分布式任务调度与执行框架

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /