在Java Web应用程序中处理重复后台任务的策略?
我正在使用Java EE 6技术构建个人Web应用程序(容器是应用程序服务器,Jboss AS 7)。 我从头开始创建重复的后台任务,我确定了两种可能的情况:
我想避免的(我不知道是否可行)是让我的platformm散布一些背景任务(其中一些使用cron,其他使用TimerTask,db作业等)变得难以维护。
考虑到以前的两个要求,在Java Web应用程序中处理重复性后台任务有哪些不同的方法?
有关:
借助EE6,您可以使用带有@Timeout注释的TimerService几乎在所有情况下摆脱Quartz。
而且你不需要写一行XML来实现它的工作。
在EE Night Hacks书中有一个很好的例子,也可以在这里找到源代码。
您可以将Timeout方法添加到处理触发器Web事件的bean中。 这样,他们可以保持在一个地方。 您也可以通过触发事件修改定时器设置。
我仍然会看Quartz。 我无法对使用EE6的TimerService发表评论,因为我没有使用它,但是我发现Quartz非常有用。
当我使用它时(几年前现在),它有一个配置文件,它非常类似于你为cron找到的配置文件。 您可以使用它来调用执行预定作业所需的任何方法,然后简单地提供一些其他机制以根据需要调用该方法。
链接地址: http://www.djcxy.com/p/6631.html上一篇: Strategies for handling repetitive background tasks in a Java web application?