`
hzhui
  • 浏览: 61255 次
  • 性别: Icon_minigender_1
  • 来自: 广东河源
最近访客 更多访客>>
社区版块
存档分类

作业调度框架Quartz一:开天劈地

    博客分类:
  • J2EE
阅读更多

引子:

        现代的 Web 应用程序框架在范围和复杂性方面都有所发展,如我们用得最多的struts、spring、hibernate等,也有如慢慢流行起来的JSF等等,这些应用程序框架的发展,誓必要求应用程序的每个底层组件也必须相应地发展。作业调度是现代操作系统用得最多的技术之一,它所给我们带来的好处远不只有作业同步执行那么少,而且作业调度是操作系统不可或缺的部件,然而随首Java技术的不断扩大,现代Web应用系统也不断变得越来越复杂,那么作业调度也应该是 Java 应用程序的一般要求,而且也是对 Java 开发人员一贯的要求。虽然目前的调度技术比起原始的数据库触发器标志和独立的调度器线程来说,已经发展了许多,但是作业调度仍然不是个小问题。对于这个问题,最合适的解决方案应该就是来自 OpenSymphony 的 Quartz API。

       Quartz ,意为石英、晶钟,在现代通讯技术(如移动通讯)中用于对准时间的也叫“时钟晶阵”,石英是目前为已最为精准的时钟。Quartz的读音是,你也可以到http://www.iciba.com/Quartz/听一下准确的发音。Quartz<script language="JavaScript" type="text/javascript">echoFlash("http://www.iciba.com/resource/a/en/q/quartz.swf");</script>个开源的作业调度框架,它可以嵌入到你的Java应用程序中,Quartz 用于创建简单或者复杂的十个、一百个甚至是一千个作业,可为是真正地您的 Java 应用程序中进行作业调度提供了简单而强大的机制。Quartz 允许开发人员根据时间间隔(或天)来调度作业。它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联。整合了 Quartz 的应用程序可以重用来自不同事件的作业,还可以为一个事件组合多个作业。Quartz 也可以通过在属性文件中指定 JDBC 事务的数据源、全局作业和/或触发器侦听器、插件、线程池等配置 Quartz。

正文:

      Quartz 是一个免费的自由使用软件,目前的最新版本是1.6,你可以到http://www.opensymphony.com/quartz/download.action下载,也可以在本贴子里进行下载。

谁在使用Quartz ?下面的列表列出了一些正在使用Quartz 的用户:

  • Vodafone Ireland - uses Quartz for scheduling tests to be carried out on systems in order to generate quality of service information.
  • Covalent Technologies, Inc. - uses Quartz within their CAM product to handle anything scheduling related in the system, such as: scheduling server actions (start, restart, etc.), metric calculations, data cleanup daemons, etc.
  • PartNET Inc. - uses Quartz for scheduling application events and driving workflows within many of its products.
  • U.S. Department of Defence - uses Quartz at various points within a large electronic commerce application, noteably order fulfillment.
  • Level3 Communications - uses Quartz to drive software builds and deployments.
  • Atlassian - uses Quartz within their excellent JIRA and Confluence products.
  • Cisco - uses Quartz in various in-house systems.
  • Apache Jakarta - Quartz is used within (or as plugins to) several products falling under the Jakarta umbrella.
  • OpenSymphony - Uses Quartz to drive the OS Workflow product.
  • Spring - Quartz is used within the Spring Framework.
  • XpoLog - uses Quartz within XpoLog Center in order to enable automatic technical support.
  • Bloombase Technologies - has integrating Quartz within their Spitfire EAI Server for XML security processing.
  • Thomson Tax and Accounting - uses Quartz in its job scheduling framework within it's editorial systems group.
  • The Liferay Portal - is using the Quartz Scheduler. Just download and check the code. Liferay Inc. Portal.
  • Infoglue CMS - from infoglue.org
  • Apache Cocoon - uses Quartz to provide scheduling features and to run application background processes.
  • JBoss - uses Quartz for the implementation of a number of services within its infrastructure.

    Quartz的基本单元---作业和触发器:

    • 作业 是能够调度的可执行任务
    • 触发器 提供了对作业的调度

            一看到这两个单元,我们很快就会想到,这两者是合在一起来实现功能的,但事实上并非如此,Quartz最终也是把它们两分离开来,通过把要执行的工作与它的调度分开,Quartz 允许在不丢失作业本身或作业的上下文的情况下,修改调度触发器。而且,任何单个的作业都可以有多个触发器与其关联,这不仅实现了作业与触发器的一对多关系,而且也益于作业的管理。

  • 分享到:
    评论
    3 楼 lidwup 2007-09-08  
    很期待你的例子,希望能尽快上传。···
    2 楼 soming 2007-09-07  
    已经用这个东西作了一个项目
    1 楼 hzhui 2007-09-06  
    后继会使发表Quartz的使用例子。

    相关推荐

      Quartz一个开源的作业调度框架

      Quartz是一个广泛应用于企业级应用中的开源作业调度框架,它为开发者提供了强大的任务调度功能,使得应用程序能够在预定的时间执行特定的任务。Quartz的核心设计目标是简单易用且可高度扩展,能够满足从小型项目到...

      Spring整合任务调度框架Quartz

      在 Java 领域中,Quartz 是一个非常流行的任务调度框架,而 Spring 是一个非常流行的 Java 框架。在本文中,我们将详细介绍如何将 Spring 整合任务调度框架 Quartz,从而实现任务调度的自动化。 一、使用配置文件...

      Quartz一个开源作业调度框架

      Quartz 是一个强大的开源作业调度框架,主要用于自动化执行任务,如定时发送邮件、执行数据清理、执行批处理等。该框架完全用 Java 编写,兼容 J2SE 和 J2EE 环境,提供了丰富的功能和灵活性,使得开发者能够方便地...

      作业调度框架Quartz1.8

      Quartz是一个完全由Java编写的开源作业调度框架,为在Java应用程序中进行作业调度提供了简单却强大的机制。Quartz允许开发人员根据时间间隔来调度作业。它实现了作业和触发器的多对多的关系,还能把多个作业与不同的...

      quartz开源作业调度框架

      Quartz是一个功能强大的、开源的作业调度框架,完全由Java编写而成。它能够被应用在服务器端的Java应用程序中,帮助开发者轻松地创建并管理定时任务。Quartz支持多种复杂的触发规则,并且具有高度的灵活性和可扩展性...

      Quartz.NET是一个开源的作业调度框架

      Quartz.NET是一个强大的开源作业调度框架,主要用于C#编程环境中,它允许开发者在应用程序中创建、安排和执行任务。这个框架的设计目标是提供一个灵活、可靠的解决方案,使得开发者可以轻松地构建定时任务,以实现...

      Quartz作业调度框架

      Quartz作业调度框架是Java领域中非常重要的一个开源作业调度库。作业调度是指在预定的时间安排特定的任务进行执行。在企业级应用中,作业调度扮演着核心的角色,它使得企业能够自动化地执行定时任务,比如数据备份、...

      任务调度框架Quartz

      Quartz 是一个功能强大且灵活的任务调度框架,广泛应用于各种企业应用中,例如定时清理系统垃圾文件、定时导入导出数据、定时发送邮件等等业务场景。Quartz 提供了高度可控的任务调度功能,能够满足大多数的调度需求...

      任务调度开源框架Quartz

      Quartz是一款广泛应用于Java环境中的开源任务调度框架,它提供了高度可配置的作业调度系统,使得开发者能够轻松地在应用程序中实现定时任务的管理。Quartz的核心特性包括但不限于以下几点: 1. **灵活的调度**:...

      学习笔记_Quartz作业调度框架,使用corn表达式

      Quartz作业调度框架是Java开发中的一个强大工具,用于实现定时任务和工作流管理。它以其灵活性、可扩展性和稳定性而被广泛应用。本学习笔记主要围绕Quartz的使用,特别是如何利用corn表达式来设置定时任务。 Quartz...

      Quartz - 作业调度框架

      Quartz是一款广泛应用于Java环境中的开源作业调度框架,它的核心功能是实现任务的自动化执行,如定时触发、周期性执行等。Quartz以其强大的灵活性和稳定性,在企业级应用中占据了重要地位,尤其对于需要定时执行任务...

      作业调度:Quartz

      Quartz 是个开源的作业调度框架,为在Java 应用程序中进行作业调度提供了简单而强大的机制。Quartz 允许开发人员根据时间间隔来调度作业。它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联。...

      quartz 2.1.2 for .net 作业调度框架

      Quartz 2.1.2 for .NET 是一个强大的、完全开源的作业调度框架,专为.NET环境设计。它提供了一种高度可配置的方式,使开发者能够轻松地在应用程序中添加定时任务执行的功能。这个框架使得开发人员可以定义作业(Jobs...

      作业调度Quartz.net源代码

      Quartz.NET是一个开源的工作调度框架,它允许开发者在.NET环境中创建和执行计划任务。这个“作业调度Quartz.net源代码”文件很可能是包含了Quartz.NET的示例代码或者一个简单的项目,帮助用户理解和学习如何使用...

      Java任务调度框架Quartz教程实例

      Quartz是一个功能齐全、开源的任务调度服务框架,它可以被集成到几乎所有类型的Java应用程序中,无论是小型的独立应用还是大型的企业级系统,甚至是复杂的电子商务平台。Quartz框架支持创建简单或复杂的调度计划,...

      Sundial,一种轻量级作业调度框架.zip

      1. **基于Quartz API**:Sundial的底层依赖于Quartz库,一个成熟的作业调度框架,但相比Quartz,Sundial提供了一个更为简洁的API,使得开发者无需深入了解Quartz的复杂配置就能快速上手。 2. **简单易用**:Sundial...

      java 工作调度框架 quartz jcrotab

      Quartz是Java领域内一个功能强大的开源作业调度框架,它允许开发者安排任务在特定时间执行,甚至可以处理并发任务和复杂的调度需求。Quartz提供了丰富的API,可以创建、触发、管理和监控作业与触发器。其主要特点...

      Java作业调度之Quartz

      Java作业调度之Quartz是一个广泛使用的开源任务调度框架,它允许开发者在应用程序中安排复杂的作业执行计划。Quartz是基于Java的,因此可以轻松地集成到任何Java应用程序中,包括Web应用。这篇博客文章(虽然链接...

      Quartz(作业调度)

      Quartz是一款开源的作业调度框架,它为Java应用程序提供了强大的定时任务处理能力。在Spring框架中,Quartz可以被集成来实现复杂的定时任务调度。本文将深入探讨Quartz的使用,包括其基本概念、配置、API以及在Web...

    Global site tag (gtag.js) - Google Analytics