任务调度中心系统-概要设计

合集下载

wind 内 核

wind 内 核

第1章wind 内核1.1 内核概述VxWorks操作系统内核称为wind内核,下面从实时性能、核结构、调度特点等方面初步探讨。

1.1.1 实时内核“实时”表示控制系统能够及时处理系统中发生的要求控制的外部事件。

从事件发生到系统产生响应的反应时间称为延迟(Latency)。

对于实时系统,一个最重要的条件就是延迟有确定的上界(这样的系统属于确定性系统)。

满足这个条件后,根据这个上界大小再区分不同实时系统的性能。

这里,“系统”是从系统论的观点讲的一个功能完整的设计,能够独立和外部世界交互,实现预期功能,包括实时硬件系统设计、实时操作系统设计、实时多任务设计3部分。

后两者可以概括为实时软件系统设计。

实现实时系统是这3部分有机结合的结果。

从另外一个角度,即实时程度看,可以把系统分为硬实时系统和软实时系统。

硬实时系统是这样一种系统,它的时间要求有一个确定的底线(Deadline),超出底线的响应属于错误的结果,系统将会崩溃,上面所说的实时系统属于硬实时系统。

对于软实时系统来说,“实时性”是个程度概念,在提交诸如中断、计时和调度的操作系统服务时,系统定义一个时间范围内的延迟。

在该范围内,越早给出响应越有价值,只要不超出范围,晚点给出的结果价值下降,但可以容忍。

1.实时硬件系统设计实时硬件系统设计是其他两部分的基础。

实时硬件系统设计要求满足在软件系统充分高效的前提下,必须提供足够的处理能力。

例如,硬件系统提供的中断处理逻辑能同时响应的外部事件数量、硬件反应时间、内存大小、处理器计算能力、总线能力等,以保证最坏情况下所有计算仍然得以完成。

多处理的硬件系统还包括内部通信速率设计。

当硬件系统不能保证达到实时要求时,可以确信整个系统不是实时的。

目前,各种硬件速度不断提高,先进技术大量涌现,硬件在大多数应用中已经不是实时系统的瓶颈。

因而,实时系统的关键集中在实时软件系统设计,这方面也成了实时性研究的主要内容,也是最复杂的部分。

车厢调度

车厢调度

数据结构课程设计设计题目:车厢调度学生姓名:万道武专业班级:10计算机科学与技术1班指导教师:姚丽莎完成时间:2012年6月7日信息工程学院计算机科学院与技术系目录1.设计目的 (4)2.需求分析 (5)3.概要设计 (5)4.详细设计 (7)5. 课程设计体会及问题分析 (10)6.参考文献 (11)7.附录 (12)1.设计目的数据结构作为一门学科主要研究数据的各种逻辑结构和存储结构,以及对数据的各种操作。

因此,主要有三个方面的内容:数据的逻辑结构;数据的物理存储结构;对数据的操作(或算法)。

通常,算法的设计取决于数据的逻辑结构,算法的实现取决于数据的物理存储结构。

数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。

在当今信息时代,信息技术己成为当代知识经济的核心技术。

我们时刻都在和数据打交道。

比如人们在外出工作时找最短路径,在银行查询存款、通过互联网查新闻、以及远程教育报名等,所有这些都在与数据发生关系。

实际上,现实世界中的实体经过抽象以后,就可以成为计算机上所处理的数据。

数据结构课程主要是研究非数值计算的程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作的学科。

数据结构是介于数学、计算机软件和计算机硬件之间的一门计算机专业的核心课程,它是计算机程序设计、数据库、操作系统、编译原理及人工智能等的重要基础,广泛的应用于信息学、系统工程等各种领域。

学习数据结构是为了将实际问题中所涉及的对象在计算机中表示出来并对它们进行处理。

通过课程设计可以提高学生的思维能力,促进学生的综合应用能力和专业素质的提高。

通过此次课程设计主要达到以下目的:一、了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;二、初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;三、提高综合运用所学的理论知识和方法独立分析和解决问题的能力;四训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风2.需求分析本程序的任务是:假设停在铁路调度站入口处的车厢序列的编号依次为1,2,3…n。

设计主管的主要职责

设计主管的主要职责

设计主管的主要职责设计主管的主要职责(篇1)1.执行及遵守公司的规章制度,服从公司管理;2.负责监督公司各项规章制度的执行;3.负责考勤监督及起表率作用;4.负责设计部的全面工作,及时完成总经理要求的任务;5.负责设计部工作任务的制定和实施;6.负责分解设计部的.任务,跟踪进度,保证工作目标的实现;7.负责网站页面质量审核、监督与管理;8.负责协调各部门之间的关系;9.考核部门工作人员工作绩效,评定工作能力;10.负责安排对销售和本部门员工的培训;11.配合销售约见客户或与客户沟通;12.审核制定单子的制作周期和单子的分配。

设计主管的主要职责(篇2)职责:1、负责公司日常宣传、策划设计制作、企业宣传资料的设计、制作与创新;2、独立完成设计创意工作的开展,包括品牌设计,平面广告,平面印刷,包装等类别;3、协助公司其他部门人员完成对设计及美学方面的.工作,负责公司市场活动宣传品配合工作;4、负责与广告协作方沟通,保证各类平面项目的质量及其到位时间。

岗位要求:1、艺术类相关专业大专以上学历,3-5年平面设计工作经验;2、具备较强审美能力和美术功底,设计能力突出,对不同需要有灵活的艺术表现力,具备独特创意;3、熟练掌握并应用各种平面设计软件,具有扎实的美术功底,优秀的设计表现能力;4、较强的沟通理解能力,能够深度理解公司营销意图。

5、视频制作,动漫设计等作为加分项。

6、医美、美容整形、奢侈品行业优先考虑。

设计主管的主要职责(篇3)1、负责公司项目整体形象创意设计,根据公司品牌传播诉求,制定品牌视觉设计方向;2、关注行业设计动态与发展方向,准确把握公司和项目的设计风格,把控相关创意工作的出品质量,领导团队完成优秀的设计作品;3、把握项目和品牌的整体风格和视觉呈现以及传播媒介设计风格,线上的图案、广告、海报等;4、把控创意及设计项目的质量,对设计的.创意、色彩、版式等进行评审;5、全面负责公司创意、平面及设计的评判和指导工作,配合公司整体的营销策略以达到预期的市场效果;6、指导公司平面设计师、美工审美,把控公司品牌整体视觉形象,提升公司整体审美品味;7、负责公司网站及CIS视觉识别系统建设工作。

软件项目工作任务书模板

软件项目工作任务书模板

公司名称——部门名称“请在此处填写项目名称(保留引号)”项目任务书【下表由PMO管理员在“任务书审核和立项评分”结束后填写】1项目简介1.1背景[介绍项目的背景]1.2发起人[项目的发起人]1.3客户基本需求[简要介绍客户基本需求]1.4客户信息2项目目标2.1项目管理目标[从管理的角度描述此项目要达到的目标,如:客户可使用该系统实行会议的信息化管理等。

可以进行简单文字描述,也可以采用列举的方式]●[目标1描述]●[目标2描述]2.2项目技术目标[从技术的角度描述此项目要达到的目标,针对实际项目简单说明。

可以采用列举方式进行描述。

如:实行会议信息编辑、参会人员查询、签到卡制作、签到情况统计等]●[目标1描述]●[目标2描述]2.3项目性能目标[从性能的角度描述此项目要达到的目标,如运行速度、易用性、兼容性、可扩充性等。

可以采用列举方式进行描述。

如:确保人员并排入场不漏卡、可一键生成人员签到情况报告单、可兼容XP/Win7操作系统、可结合人员坐席排位系统使用等。

]•运行速度•易用性•兼容性•可扩充性3工作内容本次项目的主要实施内容主要包括15项,包括建模服务、信息发布平台、公共广播、视频监控、智能巡更、无接触电梯控制、智能考勤、智慧食堂、人脸闸机、室内环境质量监测、智慧抄表、智慧灯杆、智慧井盖、接口集成、项目实施,具体产品实施内容与主合同中约定的相关内容为准。

3.1数字孪生3.1.1服务内容完成本项目要求的滨州移动大楼所在园区及楼宇的3D虚拟仿真建模、智慧园区平台开发、部署及实施等,该项目涉及主要工作包括。

●收集滨州移动大楼园区、建筑、楼层相关CAD图●园区、建筑、楼层各角度拍照●3D仿真建模(一个园区、三栋建筑外立面、生产调度中心楼宇所有楼层)●3D效果渲染●模型上传测试●OnePark智慧园区平台开发3.1.2可交付物本项目约定的园区、重点建筑和室内结构场景3D模型文件、OnePark智慧园区平台。

执法执勤调度监控平台建设方案(2)

执法执勤调度监控平台建设方案(2)

zcdx | Page 20项目
子项
6
数据交换共享
7
数据可视化系统
系统开发
8
管理驾驶舱
9
系统对接
10 测试/部署
概述
研发成本(万元)
数据交换模块通过标准、统一的数据服务接口,向各业务系统提供数 据交换共享服务。实时性要求高的交换纳入交换平台的统一管理,统 一技术规范,统一申请、审批、授权、发布。
成本预算
专注技术 聚焦创新
序号 项目
子项
1
系统需求分析
2
系统设计 系统数据资源分析
3 系统详细设计
概述
研发成本(万元)
全面沟通、分析系统建设需求,设计系统原型,编写系统详细需求分 析方案。
梳理三大应用系统数据资源以及数据接口,整理数据交换共享方案。
对系统进行详细设计,包括UI、功能、数据库等,编写系统概要设 计和详细设计方案。
目录 CONTENTS
01 项目情况 02 建设方案 03 实施方案
项目背景
专注技术 聚焦创新
目前自然资源厅针对省内执法执勤工作配备有执法执勤车辆、对讲调度终端以及车载监控,三种设备 分别对应使用车联网平台、综合监控管理平台、对讲调度台进行管理。由于三个平台未互联互通,导致对 执法执勤工作管理、监管需要分别进入三个系统进行操作,并且由于数据之间无关联性,往往需要手动查 找,严重影响了工作效率。
车辆行驶过程中摄像头录制的行车 记录视频、执法过程中录制的执法 视频。
音视频 资源
图文资源
执法过程进行的现场图文上报记录 信息。
虚拟驾驶
将行车记录与定位 系统结合根据用户 选定路径自动播放 路径内录制的视频,
实现虚拟驾驶

公交调度系统使用手册

公交调度系统使用手册

软件用户操作手册1.软件概述1.1 编写目的:该文档是为系统使用者介绍使用方法以及遇到问题是如何解决等,软件使用者为公交调度员。

1.2 项目背景:公交公司在在调度工作中因任务繁重,手动调度易出错等原因,由杭州易和网络软件研发部研发公交调度系统。

1.3 参考资料:【列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括:a.项目的计划任务书、合同或批文.b.项目开发计划.c.需求规格说明书;d.概要设计说明书;e.详细设计说明书;f.测试计划;g.手册中引用的其他资料、采用的软件工程标准或软件工程规范。

】2.软件概述2.1目标:通过软件掌握一切车辆司机实时状态,并且能完成实时调度;2.2功能:登录,选择监控线路,显示车辆实时速度、温度、故障,查看线路下的所有车辆位置状态,调度实时调度车辆和司机,发送消息,消息提醒和警告,调度记录查询,里程统计,执行进度,调派单查询,定班定点计划,轨迹回放;2.3性能:数据显示及时快速,延时误差在几秒内,操作简单灵活符合用户操作习惯;3.运行环境3.1硬件:a.内存1G以上,CPU无特殊要求b.显示器分辨分辨率1280*720以上最小不应小于1024;3.2支持软件:操作系统要求为windows,版本xp以上(包括xp系统);4.使用说明4.1安装和初始化:点击安装文件,开始安装,一切都默认安装即可,可以自己设置安装目录,创建桌面快图标,如图:4.2安装出错:安装出错时候查看系统版本是否过低,关闭大型程序,和杀毒软件,或重启电脑。

4.3 运行软件:在桌面找到BusClient文件,双击启动,如下图:4.5 选择线路:第一次登录的时候会要求选择监控的线路,在你所有有权限的线路下选择你当前不要的线路,如下图:4.6 查看数据:通过不同的菜单按钮来查看你要查看的数据。

4.6.1 车辆信息:点击车辆信息按钮查看:4.6.2 调度记录查询:点击调度记录查询按钮查看:4.6.3 轨迹回放:点击轨迹回放按钮查看:4.6.4 里程统计:点击里程统计按钮查看:4.6.5 执行情况:点击执行情况按钮查看:4.6.6 调派单:点击调派单按钮查看:4.6.7 定班定点计划:点击定班定点计划按钮:4.7 车辆调度:调度可以在“车辆实时信息”里面双击车辆或右键车辆->单车调度就会弹出调度界面,另外也可以在行车记录表中直接修改,如下图:息后点击发送即可,如下图:5.运行说明5.1正常运行:打开程序后登录,不会遇到任何提示框。

软件概要设计说明模板(面向对象方法)

软件概要设计说明模板(面向对象方法)

XXXX软件概要设计单位编写校对审核标审批准XXXX有限公司文档控制变更记录目录1范围 (1)1.1标识 (1)1.2系统概述 (1)1.3文档概述 (1)1.4基线 (1)2引用文件 (1)3术语和定义 (2)4总体说明 (2)4.1软件与系统的关系 (2)4.2软件功能描述 (3)4.3项目特点分析 (3)4.4设计决策 (3)4.5软件业务流程(建立与设计模块的关系) (3)4.6软硬件环境说明 (3)4.7复用说明 (3)5XXX配置项体系结构设计 (4)5.1体系结构 (4)5.1.1组件划分 (4)5.1.2组件层次结构关系 (5)5.1.3性能的分配 (6)5.2接口设计 (6)5.2.1配置项外部接口 (7)5.2.2组件开发接口 (7)5.2.3组件其他接口 (7)5.3总体进程视图 (8)5.3.1XXX进程 (8)5.3.2任务执行线程 (8)5.4组件说明 (11)5.4.1业务流程调度(标识:TSF) (11)5.5实现视图 (18)5.6部署视图 (18)6数据库设计 (19)6.1概念数据库设计 (19)6.2逻辑数据库 (20)6.2.1数据库表清单 (20)6.2.2库表描述 (20)6.3物理数据库设计 (20)7其他设计 (20)7.1配置项初始化数据设计 (20)7.2安装设计 (20)8组装设计 .................................................................................. 错误!未定义书签。

8.1第一轮组装........................................................................................ 错误!未定义书签。

8.1.1第一组........................................................................................ 错误!未定义书签。

设计和开发控制程序

设计和开发控制程序

设计和开发控制程序1. 控制程序的概述控制程序是计算机系统中的一个关键部分,它用于管理和协调系统中的各个组件和资源,以实现系统的正常运行和预期功能。

控制程序通常由一系列指令和算法组成,它能够监控系统状态、接收输入、产生输出,并根据一定的逻辑规则对系统进行控制和调度。

2. 控制程序的设计和开发流程设计和开发一个控制程序需要经过以下几个重要步骤:2.1 需求分析在设计控制程序之前,首先需要进行需求分析。

通过与用户沟通和调研,了解用户的具体需求和系统功能要求,明确控制程序的功能和性能指标。

需求分析的结果将成为后续设计和开发的基础。

2.2 概要设计概要设计是对控制程序整体结构和功能进行规划和设计。

在这一阶段,需要确定控制程序的模块划分、数据流和控制流,并进行相应的数据结构和算法设计。

概要设计的结果是控制程序的总体框架和设计方案。

2.3 详细设计详细设计是在概要设计的基础上,对各个模块和功能进行详细的设计。

在详细设计中,需要定义每个模块的输入、输出和功能,并具体说明数据结构和算法的实现细节。

详细设计的结果是控制程序的具体实现方案。

2.4 编码和测试在详细设计完成后,可以开始编写控制程序的源代码。

编码阶段需要按照详细设计的要求实现各个模块和功能,并进行相应的单元测试和集成测试以验证程序的正确性和稳定性。

测试结果将反馈给设计人员,有助于进一步修改和优化程序设计。

2.5 调试和优化控制程序的调试阶段是为了发现和修复程序中的错误和故障。

通过调试,可以验证控制程序的正确性和稳定性,确保它能够按照设计要求进行正常运行。

调试完成后,还需要对程序进行优化,以提高其效率和性能。

2.6 发布和维护当控制程序经过验证和优化后,可以正式发布和部署到目标系统中。

发布后,需要进行一定的维护和支持工作,包括对程序进行更新和修复,以及对系统进行性能监控和故障排除等工作。

3. 控制程序的关键技术和挑战设计和开发控制程序时,面临以下一些关键技术和挑战:3.1 并发和并行控制现代计算机系统中通常存在多个任务和进程同时运行的情况,控制程序需要能够有效地进行并发控制和并行计算,以实现多任务的协同工作和系统资源的高效利用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

任务调度中心系统目录一、设计目的 (5)二、整体架构 (7)2.1 核心功能 (7)2.2 核心组件 (8)三、Job元数据 (8)四、JobClient (9)五、JobManager (Master) (9)5.1 RPCServer (9)5.2 数据库管理服务类 (10)5.3 资源管理服务 (11)5.4 Job依赖关系维护 (12)5.5 定时调度器 (12)5.7 告警服务 (13)5.8 初始化流程 (13)5.9 启动流程 (13)5.10 成功Job处理流程 (14)5.11 失败Job处理流程 (14)六、JobWorker (Slave) (14)6.1 存数据结构 (14)6.2 定期从获取可以运行的Job (14)6.3 执行Job (15)七、核心流程图 (15)7.1 Job维护流程 (15)7.2 Job依赖维护流程 (16)7.3 资源维护流程 (18)7.4 Job提交流程 (19)7.5 Job执行流程 (20)7.6 Job监控流程 (20)八、后台部署与运行 (22)8.1 安装 (22)8.2 数据库建库建表 (22)8.3 配置 (22)8.4 运行 (24)九、部署与运行 (25)9.1 安装 (25)9.2 配置 (25)9.3 运行 (26)一、设计目的●目前整个市场任务调度非常粗糙,基本仅靠Crontab来定时运行,日志清洗、日志校验、数据分析、入库各模块之间无有效依赖,经常由于前置任务出错或者未完成,后续的任务运行出错,并且对任务出错的监控不到位,造成分析数据不能及时入库,导致线上BUG。

●真实业务场景下合理的任务运行图:(图一)1.定时触发一个日志校验的Job,去检查清洗后的日志是否已经就绪;2.分析的JOB均依赖日志校验的Job,一旦日志校验的Job执行成功,则并发启动依赖其的分析Job1-4;3.入库JOB1依赖分析JOB1和分析JOB2,如果这两个分析JOB全部执行成功,则启动执行入库JOB1;4.对于入库JOB2,如果分析JOB3和分析JOB4有一个未成功执行,则入库JOB2就不执行;●一个复杂的任务依赖图:●为了解决数据平台分配任务的稳定性,时效性,因此设计开发任务调度中心系统,旨在解决任务的统一配置,统一调度,统一监控告警等功能,减少开发人员的开发和维护成本,提高平台的稳定性。

二、整体架构2.1 核心功能1.Job维护:添加、修改、删除、杀死Job;2.Job依赖关系维护:添加、修改、删除Job之间的依赖关系;3.查询类:查询Job列表、根据状态查询Job列表、查询Job的父子依赖等;4.资源维护:添加、修改、删除资源,查询资源列表;5.Job触发:支持定时、依赖、手工触发调度Job;6.任务失败告警:当任务失败或者某个时间点未成功结束时,触发和短信报警;7.支持任务类型包括:shell、python、MapReduce、Hive、DataHub任务的调度及监控;8.可扩展性:Slave(JobWorker)可根据需要随时扩充;2.2 核心组件1.元数据库:Mysql,保存Job的配置、依赖关系、运行历史、资源配置、告警配置等;2.JobClient:客户端类,对外的唯一接口;3.JobManager:Master,提供RPC服务,接收并处理JobClient提交的所有操作;与元数据库通讯,维护Job元数据;负责任务的统一配置维护、触发、调度、监控;4.JobMonitor: 监控正在运行的Job状态、监控任务池、监控等待运行的Job;5.JobWorker:Slave,从任务池中获取Job、负责启动并收集Job的执行状态,以心跳方式发送给JobManager;以上各组件下文中详细介绍。

三、J ob元数据元数据存储于Mysql 。

四、J obClient1.用户与系统交互的唯一接口;2.封装提供给用户使用的所有接口,单例模式,使用时候指定JobManager的RPC hostname和端口号;3.拥有JobManager的RPC代理,将用户提交的操作通过RPC调用JobManager的相应接口进行处理;4.提供的接口包括:●操作Job,包括增加,修改,删除,运行,杀死Job等;●维护Job依赖关系;●配置、查询资源;●查询Job信息,包括指定条件查询,如状态,JobID,时间等;●查询Job依赖;五、J obManager (Master)任务调度中心系统的Master节点,负责所有任务的调度,分发,状态跟踪,报警,资源管理等。

5.1 RPCServer●JobManager自身为一个RPCServer,为JobClient提供调用接口;●为JobClient提供的RPC接口:✓Job操作类接口:保存Job,根据JobID获取Job,获取所有Job,获取新的JobID,删除Job;✓Job依赖关系维护接口:添加、删除Job依赖,查询Job的父子依赖;✓查询类接口;查询正在运行的Job,查询Job的历史运行,查询一个时间段的Job等;✓维护类接口:停止JobManager,添加、修改、删除资源,获取资源列表;5.2 数据库管理服务类●JobStoreManager,封装所有与元数据库通讯的接口,用于Job元数据的持久化和查询。

●使用数据库池;●接口列表:5.3 资源管理服务●ResourceManager,负责Job资源的计算和分配;●资源包括:主机名/IP,可运行的任务类型,最大运行的任务数量;●初始化将资源配置表中已分配的Job数全部设为0;●资源申请流程:✓根据Job类型,首先从资源配置表中获取可以运行该类型Job的节点、最多可运行的Job数量、已分配出去的Job数量;✓从上面获取的节点中取(max_job_count – running_job_count)> 0,并按照(max_job_count – running_job_count)降序排列,取第一条记录;✓如果有返回主机名,表示有资源,则将该资源已分配Job数量+1;✓返回主机名;✓如果没有记录返回,则表示没有资源,返回null;●资源释放流程:✓根据传入的hostname和job_type,将资源配置表中该记录已分配Job数量-1;5.4 Job依赖关系维护●Neo4jService●使用Neo4j保存任务的依赖关系,供查询使用;●当Job的依赖关系发生变化时,需要在Neo4j中做相应的维护;5.5 定时调度器●QuartzService●维护定时运行的Job,当Job到达任务触发时间时,提交Job运行;5.6 Job监控●监控超时未成功执行的Job,触发告警(可依靠Quartz定时触发);●监控正在运行的Job列表,当Job长时间未更新时,做相应处理;●监控待运行Job队列,并尝试提交Job;●监控任务池,从任务池中删除被拿走的Job;5.7 告警服务●提供告警服务,目前只提供告警服务5.8 初始化流程●获取RPC host&port:从配置文件conf/master.xml中获取;●构建RPCServer;●初始化Neo4j服务;●从数据库中初始化加载所有Job;●从数据库中初始化job依赖;●初始化资源管理服务;●构建Quartz服务;5.9 启动流程●初始化;●启动jobManagerRPCServer;●registerShutdownHook;●启动Neo4j服务线程;●启动Quartz服务线程;●启动Job监控线程;5.10 成功Job处理流程●更新Job状态;●获取该Job的一级子Job,分别检查子Job的其他父Job,如果父Job全部完成,则提交该Job运行;如果有父Job未完成,则将该Job加入因前置Job未全部完成而等待运行的Job队列5.11 失败Job处理流程●更新Job状态;●告警;六、J obWorker (Slave)6.1 存数据结构●正在运行的JobExecutor列表;6.2 定期从获取可以运行的Job●定期从任务池获取可以运行的Job●定期汇总各个Job状态,并更新;6.3 执行Job●根据Job类型,构建相应的JobExecutor,执行并收集Job执行日志;七、核心流程图7.1 Job维护流程●添加、修改Job●删除Job7.2 Job依赖维护流程添加Job依赖删除Job依赖●添加、修改资源●删除资源●Job自动提交(定时触发和依赖触发)●Job手动提交(由JobClient提交)7.5 Job执行流程7.6 Job监控流程●监控任务池●监控等待运行的Job监控正在运行的Job八、后台部署与运行8.1 安装●解压●解压后目录结构:conf/ ##配置文件bin/ ##执行脚本lib/ ##第三方jar包Manager.jar ##核心jar包8.2 数据库建库建表●建库:●赋权:●建表:8.3 配置●conf/c3p0.propertiesc3p0数据库池。

●conf/mail.properties发送告警配置。

●conf/master.propertiesJobManager配置文件。

✓job_manager_rpc_host=172.16.0.1 //JobManager RPC运行主机ip ✓job_manager_rpc_port=2234 //JobManager RPC运行端口号✓job_monitor_scan_period=10 //JobMonitor扫描数据库时间间隔●conf/slave.propertiesJobWorker配置文件。

✓job_worker_scan_period=5 //JobWorker线程扫描数据库间隔,单位:秒✓job_log_dir=/usr/local/skynet/logs //JobWorker记录的日志路径✓job_worker_jetty_port=9911 //JobWorker中Jetty服务端口号,用于查看Job运行日志✓job_working_directory=/tmp/skynet/ //job执行工作目录,各用户必须有可读写权限,chmod –R 777 /tmp/skynet●bin/net.sh配置export JAVA_HOME=/usr/local/jre1.7.0_67●bin/monitor-net.sh系统监控脚本。

配置export JAVA_HOME=/usr/local/jre1.7.0_67配置maillist= //当系统运行异常时,发给管理员告警●开放相关端口访问权限job_manager_rpc_port、job_worker_jetty_port●配置环境变量NET_HOME,JAVA_HOME●数据库中配置初始数据dmp_job_buseinss_type //业务类型dmp_resource_config //资源dmp_user //用户、用于前端页面登陆和权限控制8.4 运行●运行JobManagerbin/net.sh start jm启动后,在net/下产生jm.log日志文件●运行JobWorkerbin/net.sh start jw启动后,在net/下产生jw.log日志文件●运行系统监控脚本bin/ monitor-net.sh启动后,在net/下产生monitor.log日志文件(5分钟刷新一次)8.5 停止●停止JobWorkerbin/net.sh stop jw●停止JobManagerbin/net.sh stop jm//会将JobManager和系统监控(monitor-net.sh)一起停止九、部署与运行9.1 安装●将net.war拷贝至$TOMCAT_HOME/ webapps/9.2 配置●开放8080端口●配置tomcat数据库池:$TOMCAT_HOME/conf/ context.xml<Resource name="jdbc/NetDB" auth="Container"type="javax.sql.DataSource"driverClassName=".mysql.jdbc.Driver"maxActive="50" maxIdle="10" maxWait="10000"username="net_reader" password="password"url="jdbc:mysql://172.16.0.1:3306/net"validationQuery='select 1'testWhileIdle='true'timeBetweenEvictionRunsMillis='8000'minEvictableIdleTimeMillis='10000'/>●配置后台服务信息:$TOMCAT_HOME/ webapps/net/WEB-INF/classes/ jm.propertiesjob_manager_rpc_port=2234job_manager_rpc_host=172.16.0.19.3 运行●运行tomcat即可。

相关文档
最新文档