- 博客(12)
- 收藏
- 关注
原创 企业级任务调度框架Quartz 九 Quartz之作业触发器Trigger
前序: 我们已经大概对Quartz的基本有了一个大概的认识;现在我们将要逐渐对Quartz的各个重要组件进行学习;前面已经对job进行了详细讲解,现在我们来认识下它的一个重要兄弟,没有它,作业将无法得到执行的---触发器Trigger;[b]1.Quartz中的触发器Trigger[/b] Job 包含了要执行任务的逻辑,但是 Job 对何时该执行却一无所知。这个事情留给...
2009-02-15 14:32:55
131
原创 企业级任务调度框架Quartz 七 线程在Quartz里的意义(1)
1.Java 中的线程 线程允许程序同一时间做很多任务,至少,看起来那些任务是并发执行的。在我的并发编程的帖子里有介绍线程的基本概念;我们知道在任一特定时刻仅有一个线程在执行,但是 CPU 给每个线程一小片时间运行(通过时间片)然后来回在线程间快速的切换。这就是我们所看到的多线程运行的样子。这里的cpu指的是单处理器的情况,因为对于多处理器的话,多线程调度机制将会将各个任务分配到不同处理...
2009-02-14 17:17:47
141
原创 企业级任务调度框架Quartz 八 线程在Quartz里的意义(2)
前序: 做为企业里的任务调度框架,出现同一时间点同时运行两个任务,或者两个任务因为开始的执行时间和执行时间的长短,很有可能出现任务并发执行的情况;因为Quartz的实现是采用java编程,那么多线程机制就是解决并发问题的必要手段了; 线程与 Quartz 来说尤为重要,因为 Quartz 就是设计为支持同时运行多个 Job。为达到此效果,Quartz 非常倚重于内建于...
2009-02-14 16:47:43
136
并发编程 二 之 线程驱动任务
前序: 我们前面说了,我们的程序是可以分成若干个程序片段的,而每一个程序片段我们都可以用来做为一在多个任务;当然做为独立可运行的任务将更为理想化;在多线程来实现并发的手段时,我们常常将没一个任务用一个独立的线程来进行驱动; 下面是一个简单的线程来驱动我们的一个任务的执行;[b]1.任务的描述[/b][code="java"]/** * 一个简单的任...
2009-02-12 09:01:44
120
并发编程 一 之 基本背景
[b]1.人们的期望[/b] 对于单处理器环境下,人们希望自己的程序能够并行的执行,即可以并行的执行程序中的多个部分;而对于多处理器的环境下,则希望可以同时进行执行; [b]2.并发“具有可论证的确定性,但实际上具有不确定性”[/b] 我们可以通过仔细分析和代码审查编写出能够正确工作的并发程序,但在实际情况中,可能出现并发程序在给定,适当条件的时候,运行失败;这种情况可能是...
2009-02-11 00:58:22
91
原创 什么是J2EE的集群?(待续)
[size=large][b]1. 前言 [/b][/size] 现在有越来越多的关键应用和大型应用是基于J2EE 来创建的,像银行系统和帐单系统这些关键应用要求有很高的可用性,而Google 和Yahoo 这样的大型应用就需要很好的可扩展性。在如今这个联系越来越紧密的世界,高可用性和良好的可扩展性的重要性日益突出。例如在1999 年6 月份,eBay 的服务停止了22 个小时,...
2009-02-08 22:56:35
90
企业级任务调度框架Quartz 六 任务调度器(Scheduler)
前序: 我们已经在前面的内容能里看到了,我们用 Scheduler 来管理我们的 Job;创建并关联触发器以使 Job 能被触发执行;以及如可选择 calendar 为给定的时程安排提供更多的灵活性。[b]1.Quartz 调度器的介绍 [/b] 调度器(Scheduler) 是Quartz 框架的心脏,Scheduler也是 Quartz 的主要 API。对于 Q...
2009-02-08 22:25:49
146
原创 企业级任务调度框架Quartz 五 Quartz的声明式配置
前序: 前面我们已经通过编程的方式实现了多个作业任务执行具体操作的演示;但具体到实际的时候,如果我们要在 Job 启动之后改变它的执行时间和频度,则必须去修改源代码重新编译,我们很难去以编程的形式来实现作业任务的注册(注册到任务调度器)和对其的后期维护,为了便于维护我们将采取配置的形式来实现; [b]1.quartz.properties[/b] Quartz最重要的配...
2009-02-08 18:36:03
167
原创 企业级任务调度框架Quartz 四 多个job实例注册到任务调度器上
前序: 在第一个例子我看到了自定义的作业类在任务调度器上注册后,则通过任务调度器来实现启动;下面,我们将同一个作业类执行两个任务,并都将他们注册到任务调度器上! 首先一个job类指向两个任务,则任务性质可能一样,但任务信息存在差异;我们需要创建两个不同属性信息的job类实例;这个创建的动作是由Scheduler来完成;前面我们已经说了,它获取job信息并创建实例的前提操作如下:...
2009-02-08 14:29:14
292
原创 企业级任务调度框架Quartz 三 一个简单的Quartz 例子
[b]1. 一个简单的Quartz 工程[/b] 本示例应用比起众所周知的 System.out.println("Hello world from Quartz") 来还是要有趣些。当我们用Quartz 执行一个作业时,总是希望它能为我们执行一些有趣且有意义的任务。因此,接下来我们就要做一些有趣且有用的事情。本章向您演示如何创建这么一个 Quartz 作业,Quartz 应...
2009-02-06 01:03:06
120
原创 企业级任务调度框架Quartz 二 -下载和安装Quartz
1.下载和安装 Quartz 根据资料上提供的网址http://www.opensymphony.com/quartz 我们可以下载到Quartz的最新版本1.6.4; 2.下载后包的说明 在下载后有一个包,以下是各文件目录里存放内容的说明 表 2.1 Quartz 的目录结构和内容 目录名 存放内容 Docs docs/api ...
2009-02-05 23:58:33
210
原创 企业级任务调度框架Quartz一 --企业应用中的任务调度介绍
由于目前的工作内容为建行CLPM批处理业务的设计工作,所以很好的理解批处理所用的任务调度框架Quartz势在必行;为了能够更好的去服务于工作,也为了提升自己,所以我学习了Quartz Job Scheduling Framework 中文版 V0.9.2.chm这一资料,并对其中的学习内容做了一些笔记; 用该书作者的话一样,自己在去用语言表达的过程中,在为了更好的让读者...
2009-02-05 23:38:51
189
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人