Quartz.NET总结(五)基于Quartz.net 的开源任务管理平台

转载自:http://www.cnblogs.com/zhangweizhong/p/5757876.html

前面总结了很多,关于Quartz.net 的文章,介绍了如何使用Quartz.net。不清楚的朋友,可以看我之前的系列文章,http://www.cnblogs.com/zhangweizhong/category/771057.html 。

  最近,又重新整理,开发出了一套基于Quartz.net 的任务管理平台。将Quartz.net 的任务调度,管理等功能统一整合,形成了一套比较完整的任务调度平台。主要是:任务调度服务,后台任务管理 等功能。

  github地址:https://github.com/weizhong1988/Weiz.TaskManager

 

  1.  系统简介

    Quartz.net是一个开源的任务调度工具,相当于数据库中的 Job、Windows 的计划任务、Unix/Linux 下的 Cron,但 Quartz 可以把排程控制的更精细,对任务调度的领域问题进行了高度的抽象,实现作业的灵活调度。

    任务管理平台通过window服务来集成Quartz.net 实现作业的调度,只需要修改配置文件和添加相应Job即可完成作业添加,使用简单方便。

     

 

 

  2.  项目结构

    系统目前包含八个项目组成:

     

    Weiz.TaskManager.HouTai_New                  1. 任务后台管理系统,任务,。

    Weiz.TaskManager.Tasks                        2. 所有作业任务的集合,目前只有一个TestJob。

    Weiz.TaskManager.ServiceBus                    3. 集成Quartz.net 的 window服务,通过window服务来承载调度Weiz.TaskManager.Tasks 的各个任务Job。

    Weiz.TaskManager.TaskUtility                     4. 操作任务的公共类库。

    Weiz.TaskManager.Utility                           5. 整个平台的公共类库

    Weiz.TaskManager.Models

    Weiz.TaskManager.BLL

    Weiz.TaskManager.DAL

 

  3.  数据库    

    1. 任务管理平台,有基于数据库方式和基于xml 配置文件的方式。

      a)基于数据库方式,主要是将全部的任务的配置,还有任务的运行情况等数据,保存在数据库。

      b)基于xml 配置文件的方式,则是将全部的任务配置保存在xml 文件中。

    

    2. 在\Documents 目录下 找到”SQL合并脚本_20150911.sql”执行创建相关表和初始数据。

 

  4.  系统配置

    系统中所有的作业信息,都存储在数据库或是配置文件中。window 宿主服务启动时,会自动读取相应的配置的job任务,完成任务的初始化和调度。

    所有项目的配置文件,都在Config\Config.config 下配置。 设置数据库或是配置文件的存储方式,请在相关项目下增加如下配置:   

   <!--任务配置的存储方式 1 数据库,2 XML 文件 TaskConfig.xml-->
   <add key="StorageMode" value="2"/>

 

  5.  其他

    Weiz.TaskManager 任务平台,支持数据库配置和配置文件配置两种方式。如果不需要后台管理端,也可以直接使用 window 服务 + 配置文件的模式。

      a)基于数据库方式,主要是将全部的任务的配置,还有任务的运行情况等数据,保存在数据库。可以部署后台管理系统,

      b)基于xml 配置文件的方式,则是将全部的任务配置保存在xml 文件中。采用直接使用 window 服务 + 配置文件的方式 非常简单方便。无需配置相关的数据库和部署后台管理系统。

        如果部署的任务不多的话,可以用这种简单的模式。

 

  6. 部分截图

     后台管理:

    

 

    宿主服务:

    

 

 

  7. 最后

    1. 这个是本人的第一个开源项目。有很多不足,其中,也有部分代码,借鉴其他朋友的经验,大家多多包涵。

    2. 这只是个介绍,没有详细的说明如何使用。如有问题,可以找我详细了解。

 

posted @ 2016-11-11 15:01  Jbp  阅读(971)  评论(1编辑  收藏  举报