当前位置: 首页 > 知识库问答 >
问题:

非群集Quartz调度程序:在应用程序启动时实例化并启动调度程序…这对多台机器安全吗?

冀翰翮
2023-03-14
@Override
public void contextInitialized(ServletContextEvent arg0) {
    try {   
        Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
        scheduler.start();
    } catch (SchedulerException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

共有1个答案

索梓
2023-03-14

我玩了一下配置和设置,找到了一个适合我的应用程序的设置。应用程序服务器从集群配置中提供web资源;我的错误是在每个应用服务器中启动了一个非集群调度程序实例。

目前,我认为这个应用程序还不需要多台机器来处理预定的作业。此外,我还没有弄清楚如何在云服务器上同步系统时间,这是Quartz集群特性的一个要求。

我最终只使用了一台启动一个调度程序实例的非集群计算机。此配置按预期工作,并且奇数bug已经消失(未确认的失火等)。

 类似资料:
  • 我有一个springboot应用程序,它接受用户的请求并将数据保存在数据库中。 保存的数据需要进行某些集成调用。所以我认为每15分钟一个调度器任务,应该选择这些数据并进行必要的调用。 但是我的应用程序被部署在AWS EC2的两个实例上。因此,这个调度程序进程将在两个实例上运行,这将导致重复的集成调用。 关于如何实现这一点以避免重复呼叫的任何建议。 到目前为止,我还没有任何代码可以分享。 请分享你的

  • 语境 我试图使用JDBC在集群模式下使用quartz调度器。 问题 在开始使用集群模式下的jdbc之前,我只是用RAM存储测试了调度器。这没有问题,我能够重新启动调度程序(主类)没有任何错误。我现在遇到的问题是,当我停止执行(CTRL+C)然后重新启动它时,我总是得到错误消息: 我不明白这是怎么回事。quartz不支持重新启动调度程序吗?我的意思是,如果出现崩溃,调度程序在恢复后重新启动会发生什么

  • 问题内容: 请考虑这个例子。 一个示例Web应用程序要求其启动。调度程序配置为将其作业存储在DB中。 该应用程序被复制到六个Web服务器上。 因此,如果我们启动六个Web服务器,则在单个DB上将有六个具有相同名称的调度程序。如https://quartz- scheduler.org/documentation/quartz-2.1.x/cookbook/MultipleSchedulers中所述

  • 我的目标操作系统将是Windows7。 如有任何帮助,不胜感激,谢谢。

  • 我们有一个Java应用程序,它使用Quartz来调度作业。我们使用的quartz版本是:Quartz-2.2.1 quartz配置使用JDBC作业存储。 如果在quartz scheduler对象上调用start方法时数据库连接关闭(由于断断续续的网络故障),它将以以下异常失败: 为了确保quartz scheduler成功启动,我们在代码中添加了重试,它在每1秒后调用quartz schedul

  • 我有一份Java申请。 应用程序有一个决定应用程序是否在启动时启动的设置。 目前,我通过在StartUp items文件夹中放置/删除快捷方式实现了这一点。 然而,我想知道是否有更好的方法来处理这种行为。 编辑 是的,是视窗。抱歉之前没有清除。 应用程序有一个UI,用户可以在其中触发操作,并且应用程序在运行时定期在后台运行一些任务。 @Peter,如何使用应用程序中的代码更改注册表?这种方法是否与