elasticsearch - 如果计划任务在下一个计划时间开始之前没有完成,会发生什么?
问题描述
用于从toLogstash
导入数据,该 sql 跟踪一个表,并且每1 分钟调度一次。Mysql
Elasticsearch
update_timestamp
有一些特殊情况下 sql 不能在 1 分钟内完成(例如初始导入到新的 ES 实例中)。
顺便说一句,如果 sql 匹配超过 100k 行,logstash 似乎会以 100k 行的小批量导入。
问题是:
如果 sql 不能在 1 分钟内完成(又名。在下一个预定时间开始之前),logstash 会做什么?
会不会:
- 跳过下一个计划任务?
根据我的观察,情况似乎是这样,但不确定。 - 延迟下一个计划任务,但从不跳过一个?
- 或者是其他东西。
- 跳过下一个计划任务?
解决方案
jdbc 输入将Rufus 调度程序的 max_work_threads 设置为1。如果没有可用的工作线程,则trigger_queue什么都不做,因此该作业的实例将永远不会运行。它将等到下一次应该触发队列。
推荐阅读
- wpf - 使用 XAML 中的转换器通过绑定动态设置 BitmapImage
- sql - sql:获取一个单列表,从另一个表按列排序
- excel - 如何使用 vb.net 在 excel 中添加页眉和页脚?
- react-native - 显示键盘时如何修改组件视图?
- ssl - (内部)WebLogic 上的 CA 签名证书和我的 Weblogic 服务器上的相同 CA 证书(公钥)。浏览器仍然不信任
- r - 如何在R中的每个位置生成具有给定字母集的所有字符串排列
- c# - 无法在c#中的块范围之外声明同名的局部变量
- mysql - 如何按日期将行分组为输出列
- windows-store-apps - 我可以使用受信任的代码签名证书对 Windows 应用商店应用程序进行代码签名吗?
- php - SQLite-Database 与我的 PHP 脚本连接,但准备好的语句不会给我所需的数据