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

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

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

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

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

 

  1.  系统简介数据库

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

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

     

 

 

  2.  项目结构code

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

     

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

    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. 这只是个介绍,没有详细的说明如何使用。若有问题,能够找我详细了解。

相关文章
相关标签/搜索