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. Attribute "lazy" with value "true" must have a value from the list "false proxy no-proxy "

    Hibernate 3.2 版本 当设置lazy="true"属性时,会产生该个异常: Attribute "lazy" with value "tr ...

  2. 大数据处理对象CLOG BLOG

    File 文件类的使用 decimal 类型(规范小数的形式)  longtext 类型(存储字符大数据) 存入文本文件到数据库 InputStream FileInputStream CLOG 类的 ...

  3. ActiveMQ学习笔记

    关键接口和类: ConnectionFactory connectionFactory;//连接工厂 Connection connection;//连接 Session session; Desti ...

  4. Heroku空项目 Git本地Push代码错误 以及 Heroku Web启动错误

    在Eclipse下建了一个"Blank Heroku App", 然后将自己写好的JS Web练习代码直接复制放到了这个空项目下, 由于Eclipse下的git工具不太会用, 导致 ...

  5. Android开发学习总结(六)—— APK反编译

    学习和开发Android应用有一段时间了,今天写一篇博客总结一下Android的apk文件反编译.我们知道,Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或 ...

  6. [MFC] MFC 获取指定窗口截图(大小可调)

    void screenShot(CRect rect,int left,int top,char *name){//截取窗口的大小,位置,名字(保存在默认路径下) CBitmap* m_pBitmap ...

  7. [JS12] 统计访问次数

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  8. 通过实验窥探javascript的解析执行顺序

    简介 javascript是一种解释型语言,它的执行是自上而下的.但是各浏览器对于[自上而下]的理解是有细微差别的,而代码的上下游也就是程序流对于程序正确运行又是至关重要的.所以我们有必要深入理解js ...

  9. 易出错的C语言题目之二:指针

    一.写出输出结果 #include<stdio.h> int main(){ ]; a[] = ; a[] = ; a[] = ; int *p,*q; p = a; q = &a ...

  10. javascript中对象函数继承的概念

    什么是函数对象?这个对象既是通常意义上的对象,又可以加上括号直接执行的函数. 产生函数对象的方式有两种:1.通过function关键字产生:var fn = function(){};2.实例化Fun ...