Quartz.Net是一个开源的、非常灵活的作业调度框架,具体使用方法和教程:http://www.cnblogs.com/shanyou/archive/2007/08/25/quartznettutorial.html

虽然很优秀,但使用过程中没有找到一个合适的后台任务配置系统,有时是CronExpress的生成,看过:http://www.cronmaker.com/ 等但都不是特别合适,最好是能参考MSSQL里的作业调度来设计。

Extjs是最牛逼的RichClient前端开发框架,下面演示下基于Extjs+Quartz.Net开发的任务调度管理系统。

整个系统分:后台作业配置管理系统和Window本地服务组成

一、Quzrtz.Net后台作业配置管理系统界面

1. 作业通知组模块,一个作业的执行成功、失败、异常是非常有必要通知到管理员的,并且不同作业需要通知的管理员也不一样,所有这里我们单独设置了一个通知组模块,可以根据需要添加若干的通知服务URL,补充完整参数即可。作业执行过程中将会根据条件,向该URL中POST数据(作业ID,名称,结果等),对应的URL服务接收到数据,可做具体的操作,比如发送到短信、发送到内部即时通讯工具、发送到微信等等,这些需要企业内部单独实现。

2. 最重要的就是作业配置管理了,作业配置重要的主要是:

  • 作业的服务URL,参数
  • 作业的执行计划,如何产生CronExpress
  • 作业的日志、通知级别

  

因为CronExpress比较强大和复杂,很多比较特殊的定时计划没有那么多精力去实现,所以提供了一个自定义CronExpress的功能,方便自己制定特殊的计划,同时为了检验是否是预期的计划时间,提供“验证表达式”功能,可以查看最近100条的执行计划,以便确认是正确的计划。

3. 作业执行完成,当然还需要做相应的日志显示,这个比较简单,直接将执行结果上传至后台系统中即可

二、Window 服务,任务执行者

任务执行者,说白了就是将服务器中配置的任务列表加入到Quartz.Net计划列表,然后靠Quartz定时去执行服务,那么客户端和服务端通信需要解决几个问题

  • 做心跳线,定时检测服务器端的作业改动(如作业删除、作业变更了执行计划),改动需要迅速起效,无需重启window服务
  • 考虑后台服务的多边形,尽量统一走webservice方式,不要直接读数据库
  • 考虑调用服务的安全性,这些定时作业的url服务只能由Quartz.Net的Window服务调用,其他第三者调用应该屏蔽

后台服务已经做了标准的webservice接口,及时不用上述的管理后台,只需要提供相应的服务,对于window 服务也是可以用的,管理后台和服务做了很好的解耦。

需要源码或者技术支持的可联系我QQ:710782046

Quartz.Net 作业调度后台管理系统,基于Extjs的更多相关文章

  1. 通用后台管理系统(ExtJS 4.2 + Spring MVC 3.2 + Hibernate)

    通用后台管理系统(ExtJS 4.2 +Spring MVC 3.2 + Hibernate) 开发语言JAVA 成品成品 前端技术extjs 数据库mysql,sql server,oracle 系 ...

  2. TIMO后台管理系统-基于SpringBoot开发

    项目介绍 TIMO后台管理系统,基于SpringBoot2.0 + Spring Data Jpa + Thymeleaf + Shiro 开发的后台管理系统,采用分模块的方式便于开发和维护,支持前后 ...

  3. 033 SSM综合练习09--数据后台管理系统--基于AOP的日志处理

    1.数据库与表结构 (1)日志表信息描述sysLog (2)Sql语句 CREATE TABLE sysLog ( id ) DEFAULT SYS_GUID () PRIMARY KEY, visi ...

  4. 基于Extjs 4.2的通用权限管理系统,通用后台模板,EF+MVC+Extjs 4.2

    基于Extjs 4.2的通用权限管理系统,通用后台. 我们的宗旨:珍爱生命,拒绝重复!Don't Repeat Yourself!!! 本案例采用EntityFramework+MVC4.0+Extj ...

  5. 基于Spring Boot和Shiro的后台管理系统FEBS

    FEBS是一个简单高效的后台权限管理系统.项目基础框架采用全新的Java Web开发框架 —— Spring Boot 2.0.3,消除了繁杂的XML配置,使得二次开发更为简单:数据访问层采用Myba ...

  6. 分享基于EF+MVC+Bootstrap的通用后台管理系统及架构

      基于EF+MVC+Bootstrap构建通用后台管理系统,集成轻量级的缓存模块.日志模块.上传缩略图模块.通用配置及服务调用, 提供了OA.CRM.CMS的原型实例,适合快速构建中小型互联网及行业 ...

  7. Anynote 基于ExtJS多用户个人信息管理系统

    Anynote——个人信息管理系统 —–主要用于学习交流—– 源码下载:https://git.oschina.net/xiyt/Anynote.git 一.系统说明 Anynote是一个基于extj ...

  8. 分享基于EF+MVC+Bootstrap的通用后台管理系统及架构(转)

    http://www.cnblogs.com/guozili/p/3496265.html 基于EF+MVC+Bootstrap构建通用后台管理系统,集成轻量级的缓存模块.日志模块.上传缩略图模块.通 ...

  9. 基于ThinkPHP框架的简单的后台管理系统

    版权声明:本文为博主原创文章,未经博主允许不得转载. 基于ThinkPHP框架的简单的后台管理系统 一个简单的后台管理系统,可能还不全面,可以自己改,有登录功能 实例如图:    

随机推荐

  1. Ajax无刷新分页

    前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AjaxPage ...

  2. MariaDB5.5(mysql)的partitioning设置 for Zabbix3.0

    用zabbix的同学都知道,一台服务器监视几百几千台服务器,一个服务器几十个item,长年下来数据量是很惊人的. 而zabbix自带的housekeeping功能,默认状态下的删除速度完全跟不上数据增 ...

  3. mysql(或者mariadb)连接工具HeidiSQL

    Some infos around HeidiSQL Project website: http://www.heidisql.com/Google Code: http://code.google. ...

  4. C#通过反射获取上层调用方法信息

    System.Diagnostics.StackFrame frame = ); System.Reflection.MethodBase method = frame.GetMethod(); st ...

  5. C#的惰性枚举

    Ruby 2.0有一个新的特性是惰性枚举器,Soi Mort 的博客举了一个例子:可以将下面的代码 File.open(path) {|fp| fp.each_line. \ select {|lin ...

  6. SQL Server中DateTime与DateTime2的区别

    DateTime字段类型对应的时间格式是 yyyy-MM-dd HH:mm:ss.fff ,3个f,精确到1毫秒(ms),示例 -- ::15.433 . DateTime2字段类型对应的时间格式是  ...

  7. [新概念51单片机C语言教程·郭天祥] 1、 基础知识必备

    目录: 单片机的大致介绍         1-1.通俗定义         1-2.51系列产品         1-3.标号意思         1-4.引脚介绍         1-5.用C语言开 ...

  8. [BTS] RFC IDOC_INBOUND_ASYNCHRONOUS

    Error Message: Log Name:      ApplicationSource:        BizTalk ServerDate:          9/10/2013 3:56: ...

  9. 自制一个能显示helloworld的最简单OS

    <自己动手写操作系统> org 07c00h mov ax,cs mov ds,ax mov es,ax call DispStr jmp $ DispStr: mov ax,BootMe ...

  10. spring-mvc.xml报错cvc-complex-type.2.4.c

    添加 <!-- 定义请求处理映射HandlerMapping --> <bean id = "handlerMapping" class = "org. ...