【问题标题】:What happens when a scheduled task didn't finish before next scheduled time starts?如果计划任务在下一个计划时间开始之前没有完成,会发生什么?
【发布时间】:2020-10-19 03:39:33
【问题描述】:

使用LogstashMysql导入数据到Elasticsearch,sql跟踪表的update_timestamp,每1分钟调度一次。

有一些特殊情况下 sql 无法在 1 分钟内完成(例如初始导入到新的 ES 实例中)

顺便说一句,如果 sql 匹配超过 100k 行,logstash 似乎会以 100k 行的小批量导入。

问题是:

  • 如果 sql 无法在 1 分钟内完成(又名。在下一个计划时间开始之前),logstash 会做什么?

    会不会:

    • 跳过下一个计划任务?
      根据我的观察,情况似乎是这样,但不确定。
    • 延迟下一个计划任务,但从不跳过一个?
    • 或者,别的什么。

【问题讨论】:

    标签: elasticsearch cron logstash scheduled-tasks


    【解决方案1】:

    jdbc 输入sets max_work_threads 为Rufus scheduler 为一。如果没有可用的工作线程,那么trigger_queue 什么也不做,因此该作业的实例将永远不会运行。它将等到下一次触发队列。

    【讨论】:

    • 所以,它会跳过一次任务。
    猜你喜欢
    • 1970-01-01
    • 2014-03-18
    • 2015-04-21
    • 1970-01-01
    • 2022-01-13
    • 2021-04-11
    • 2010-09-15
    • 1970-01-01
    • 2017-05-25
    相关资源
    最近更新 更多