Quartz Job Scheduling Framework[翻译]第四章. 部署 Job (第四部分)

七. 线程在 Quartz 中的用法

线程与 Quartz 来说尤为重要,因为 Quartz  就是设计为支持同时运行多个 Job。为达到此效果,Quartz 非常倚重于内建于 Java 语言的线程,借助于自己的类和借口还有所增强。你已经在本章或前面章节中看到过这方面的例子。

当 Quartz Schduler 首次由某个工厂方法创建时,工厂配置了 Scheduler 会在它的整个生命周期中用到的几个重要的资源。其中一些重要的资源是与线程相关的。

·主处理线程:QuartzSchedulerThread

Quartz 应用第一次运行时,main 线程会启动 Scheduler。QuartzScheduler 被创建并创建一个 org.quartz.core.QuartzSchedulerThread 类的实例。QuartzSchedulerThread 包含有决定何时下一个 Job 将被触发的处理循环。顾名思义,QuartzSchedulerThread 是一个 Java 线程。它作为一个非守护线程运行在正常优先级下。 阅读全文 >>

Tomcat 5.0.28中的dwr出TransformerFactoryImpl not found错的处理办法

环境:dwr 1.1.4 + Tomcat 5.0.28 + jdk 1.6.0_03
配置了最基本的 web.xml,加了一个 web.xml 和 RemoteBean,部署后通过网址

http://localhost:8080/testdwr/dwr 访问

页面出现错误

javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
javax.xml.transform.TransformerFactory.newInstance(Unknown Source)
uk.ltd.getahead.dwr.convert.DOMConverter.<init>(DOMConverter.java:157) 阅读全文 >>

Tomcat 和 OpenLDAP, 从配置到应用[翻译]

Tomcat 和 OpenLDAP, 从配置到应用

by Darren Duke
05/31/2005

几乎所有的 Java Web 应用都需要某种类型的安全性的控制, 并且这通常会借助于 Lightweight Directory Access Protocol (LDAP) 目录服务来实现.  作为一个开发者,很有必要在本地安装一个 OpenLDAP 和 Web 容器来提高开发效率. 配置 Tomcat 连接到 OpenLDAP 的过程假如你能理解的话,还是很直白的. 这篇文章详细描述了这一配置过程,并用 Apache Jakarta 项目下的标签库 (taglib) 来演示简单的方式去测试这一安全机制.

内容

  1. 什么是 LDAP?
  2. OpenLDAP 的安装和配置
  3. JXplorer: 可视化 LDAP
  4. Tomcat 为 OpenLDAP 的配置
  5. Tomcat 服务器配置
  6. Web 应用配置
  7. Jakarta 相应标签库
  8. 小结
  9. 资源 阅读全文 >>

Quartz Job Scheduling Framework[翻译]第四章. 部署 Job (第三部分)

5. 易失性、持久性和可恢复性

这三个属性有些类似的,由于它们影响的都是 Job 的运行时行为。我们下面依次讨论它们。

·Job 的易失性

一个易失性的 Job 是在程序关闭之后不会被持久化。一个 Job 是通过调用 JobDetailsetVolatility(true) 被设置为易失性的。

当你需要持久化 Job 时不应使用 RamJobStore

RamJobStore 使用的是非永久性存储器,所有关于 Job 和 Trigger 的信息会在程序关闭之后丢失。保存 Job 到 RamJobStore 有效的使得它们是易失性的。假如你需要让你的 Job 信息在程序重启之后仍能保留下来,你就该考虑另一种 JobStore 类型,比如 JobStoreTX 或者 JobStoreCMT。它们会在第六章“作业存储与持久化”中讲到。

Job 易失性的默认值是 false. 阅读全文 >>

Quartz Job Scheduling Framework[翻译]第四章. 部署 Job (第二部分)

3. 管理 Scheduler

除了启动 Scheduler, 在应用的生命周期中你也许还要执行 Scheduler 的别的一些操作。这些 Scheduler 操作包括查询、设置 Scheduler 为 standby 模式、继续、停止。很多情况下,当一个 Scheduler 启动后,除让它运行之外你不需要对它做任何事情的。在某些情形下,你也可能会要临时的终止 Scheduler 而转入到 standby 模式。

·启动 Scheduler

启动一个 Scheduler 也不总是一目了然的。当你有了 Scheduler 的实例,并得到正确的初始化,你的 Job 和 Triiger 也已注册上去了,你只需要简单的调用 start() 方法:

阅读全文 >>

Quartz Job Scheduling Framework[翻译]第四章. 部署 Job (第一部分)

第四章. 部署 Job

在上一章中,你首次尝试使用了 Quartz 来部署 Job。无可否认地,那些 Job 都不是很复杂,但这个不是重点。你应该轻松的对如何构造并部署 Job 有了相当的了解,更重要的是,由此热情的希望学得更多的东西。在本章中将会继续给你讲述。

第四章将带领你深入到 Quart 框架的核心部分。可证明的是,这一章对于阅读和理解本书是非常之重要的。调度器(Scheduler) 是此框架的心脏。本章关注于如何使用 Scheduler 来管理你的 Job;如何创建并关联触发器以使 Job 能被触发执行;以及如可选择 calendar 为给定的时程安排提供更多的灵活性。

阅读全文 >>

利用 ANT 实现自动化部署管理 WebSphere Application Server 5.x 下的应用

题前说明:本文所做的测试是基于 WAS5.1 的,若是其他 WAS 版,请具体调整,或参考相应版本的红皮书。

WebSphere Application Server (WAS) 确实给我们提供了一个很方便的管理控制台,可以手工很轻松的部署应用程序,管理服务器;有得亦有失,因为它不能像其他很多应用服务器那般拷贝文件的方式进行部署,所以给像 DailyBuild 那样全自动化的过程制造了一些障碍。

其实 WAS 也提供了接口(SOAP 和 RMI)可通过脚本来完成对服务器及应用程序的管理,只是使用起来稍显麻烦,还得钻研一番。你可以采用三种途径来使用 WAS 的接口: 阅读全文 >>

调优 Linux 及Websphere 整理收集[转]

说明:以为转贴,原文 http://tb.blog.csdn.net/TrackBack.aspx?PostId=1930730, 因见此文对目前项目帮助甚大,故直接转载文章内容,而不只是收藏,并保留原文格式,感谢作者分享的宝贵经验。

调优 Linux

您可能需要定制 Linux 系统,以提高服务器的性能。 下面,将向您介绍调整配置的技巧。 请牢记,这些系统可能会变化,从而导致这些建议过时,并导致您的结果有所不同。

在您为改善性能而进行任何更改之前,请确保已经对当前性能进行了度量。不管您是否关心事务执行速度、响应时间、最大并发用户数或其他一些性能条件,都需要在更改前后,进行足够准确地度量,以了解更改调优参数是否有效。 阅读全文 >>

Quartz Job Scheduling Framework[翻译]第十章. J2EE 中使用 Quartz (第二部分)

·在 J2EE 应用服务器中运行 Quartz

作为 J2EE 客户端运行 Quartz 比运行为外部 J2SE 应用程序稍显繁琐。这主要是因为部署一个应用到容器中有点了儿复杂,J2EE 规范对容器中的组件会有些约束。其中最大的原则之一就是涉及到该由谁来创建线程。因为 J2EE 容器有责任去管理所有资源,所以它并非允许谁想谁就能创建线程的。假如是这样的话,容器就会要更艰难的去管理环境和保证一切稳定性。Quartz 会创建自己的工作者线程,所以你必须依照一些步骤来保证它能正常的运转。

确保代像代码 10.1 那样的一个无状态会话 Bean 已部署到容器中。最简单的部署 Quartz 到容器中的方式是构建一个包含所必须文件的 WAR 包,然后使用管理工具或 Eclipse 部署这个 Web 应用到容器中。 阅读全文 >>

JavaRebel 1.0 正式版发布,为应用服务器侦测类的变化[翻译,来自TheServerSide]

ZeroTurnaround 宣布 JavaRebel 1.0 最终正式版发布。JavaRebel 通过即时重加载有改变的类,从而避免了应用服务器的重新部署。此次版本与第一个公开发行版加入了以下改进:

·简化了安装。现在 Java 5 中安装 JavaRebel 只需要加上 "-noverify -javaagent:javarebel.jar" 到命令行中。

·优化了性能。 此次版本关注了启动时间和后台 CPU 的使用率。一些用户报称启动应用服务器的时间比用之前版本快了 2-3 倍。

·改善了兼容性。支持所有主流的容器和框架,在其他的之上也可能工作的很好。

·扩展了对 Java 1.4 的支持。像 BEA Weblogic 8.X、Oracle OC 4J 9.x/10.X 和 Tomcat 4.x 也被支持。 阅读全文 >>