首页 文章

Unix Cron Job vs Quartz调度程序

提问于
浏览
0

在我的项目中,我需要为计划处理编写一些后台作业 . 我使用带有 spring 的石英调度程序来完成它,但通常它需要我在没有计划的情况下随机执行任务 . 所以后来我从石英中抽出了任务并为它们创建了Web endpoints (内部暴露) .

为了执行基于常规计划的任务操作,我创建了使用curl命令访问Web endpoints 的unix cron作业 .

我的问题是,为什么这种方法总是不起作用 . 即使您不想公开Web endpoints ,也可以始终使用unix cron执行独立任务 . 通过使用石英调度程序而不是unix cron作业,我获得了什么特别的优势?

1 回答

  • 2

    如果出现以下情况,您仍可以选择使用Quartz:

    • 需要将事件安排为java应用程序本身内发生的活动的一部分 . 例如,用户订阅时事通讯 .

    • 您有一个侦听器对象,需要在作业完成时得到通知 .

    • 您在预定作业中使用JTA事务

    • 您希望保留作业执行的历史记录或从文件或数据库加载作业和触发器定义

    • 您正在应用程序服务器上运行,需要负载 balancer 和故障转移

    • 您没有在UNIX / Linux环境中运行(即您希望平台独立)

相关问题