浅谈分布式任务注册及调度的实现方法
2021-04-03俞珍秒汪明贵
中国设备工程 2021年8期
俞珍秒,汪明贵
(南京南瑞信息通信科技有限公司,江苏 南京 210003)
随着现代信息技术的高速发展,企业的信息系统也充斥着大量的数据。为了合理地管理并利用这些数据,企业不得不对业务核心系统进行扩展,延伸出众多业务子系统。而这些子系统为了满足业务需求,又不得不严重依赖系统的核心数据。为了能有效地降低数据间的耦合,保证系统数据的一致性,业务系统通常会采用分布式任务调度系统来通知子系统的计算组件及时处理。但是核心数据的往往具有高频变化特性,这给任务调度系统和业务子系统的稳定运行都提出了挑战。
本文提供了一种基于异步式编程的分布式任务注册及调度的实现方法,命名为CaesiumServer。CaesiumServer 通过异步式编程将任务注册队列中的任务分发至不同的处理单元,提高了任务注册模块的高效性。通过任务合并,避免了不必要的任务调度,保证了任务执行方的稳定运行。最后,多种任务执行策略能够合理规划资源,满足不同场景下的任务调度需求。
1 总体设计
在CaesiumServer 的设计中,任务接收模块接收到注册任务后,将任务信息中相同的任务进行合并后更新至任务池,以此保证相同的任务不会被多次重复触发。此外,任务执行模块在获取任务池任务后,会根据任务性质直接启动任务执行程序或发布任务执行信息。最后,任务执行方的执行控制器会根据任务注册时指定的策略启动任务执行程序。
2 任务注册信息
在CaesiumServer 设计中调度引擎的任务接收模块处理任务注册信息。……
登录APP查看全文
