crontab任务重复执行?不执行?不按照配置执行?大概率是配置出错了!!!
在使用crontab配置定时任务是,容易大意出错的配置记录,有温度的文章分享,有态度的日常记录~
一、情景1
设置每天凌晨执行某一任务,结果发现凌晨0点没分钟都执行了一次,我的天!!!
1、分析原因可能是没有配置crontab的minute,例如:
* 0 * * * echo 'test crontab' >> test.txt
2、正确的设置应该是:
* 0 * * * echo 'test crontab' >> test.txt
可能因为大意而导致每天任务执行60次,太可怕了,如果是插入数据,原本插入1万条数据,结果一天就插入了60万条数据,想想你的mongo的存储能跟得上吗?
二、情景2
每一分钟执行某一任务,发现只是每小时的第一分钟执行了,尴尬不!!!
1、分析原因可能是crontab的minute设置错误,列入设置成了如下:
1 * * * * echo 'test crontab' >> test.txt
2、正确设置应该是:
*/1 * * * * echo 'test crontab' >> test.txt
# 或者
* * * * * echo 'test crontab' >> test.txt
大意失荆州,配置需谨慎~
三、情景3
设置每40分钟执行一次,结果发现只有在整点或者40分种的时候执行,惊喜不?
1、原因是设置分钟不是60的倍数,则会在整点(分钟数为0)和分钟%设置时间 = 0是执行(有点绕,稍等分析原因),例如:
* */40 * * * echo 'test crontab' >> test.txt # 只会在整点和40分钟的时候执行
2、分析具体原因
crontab执行标准是,每分钟判断某个任务是否被执行:
- 每分钟判断一次任务是否执行
- 当前分钟数除以设置分钟数余数为0则执行
回到问题,设置*/40:
- 整点时,分钟数为0,0除以40余数为0,则执行任务
- 40分钟时,分钟数为40,40除以40余数为0,则执行任务
不积跬步,无以至千里;不积小流,无以成江海。
crontab任务重复执行?不执行?不按照配置执行?大概率是配置出错了!!!的更多相关文章
- crontab执行脚本中文乱码,手动执行没有问题
crontab执行脚本中文乱码,手动执行没有问题 产生原因: 这是因为Unix/Linux下使用crontab时的运行环境已经不是用户环境了,因此原本用户下的一些环境变量的设置就失效了.例 ...
- crontab 在指定时间范围每隔2小时执行一次和指定时间执行实例
crontab 在指定时间范围每隔2小时执行一次和指定时间执行,下面实例实现了:10-23点每两个小时执行一次,2点执行一次,分钟依次是1 2 3 ,没有24点的,晚上12点是0点注:*代表所有的取值 ...
- JAVA定时执行任务,每天定时几点钟执行任务
JAVA定时执行任务,每天定时几点钟执行任务的示例如下: 1.建立TimerManage类,设置时间点,时间点设置的管理类,代码如下: package com.pcitc.time; import j ...
- Windows Server 2008/2012 计划任务配置执行bat
首先Windows Server 2008不同于其他服务器操作系统和Windows Server 2003有着很大的区别,计划任务的名称是“任务计划程序”不在控制面板里,而是在“管理工具”里.由于服务 ...
- 深入理解 JS 引擎执行机制(同步执行、异步执行以及同步中的异步执行)
首先明确两点: 1.JS 执行机制是单线程. 2.JS的Event loop是JS的执行机制,深入了解Event loop,就等于深入了解JS引擎的执行. 单线程执行带来什么问题? 在JS执行中都是单 ...
- 分享一个shell脚本的坑:grep匹配+wc取值 在脚本执行后的结果与手动执行结果不一致
打算在跳板机上写一个shell脚本,批量检查远程服务器上的main进程是否在健康运行中. 先找出其中一台远程机器,查看main进程运行情况 [root@two002 tmp]# ps -ef|grep ...
- 从join on和where执行顺序认识T-SQL查询处理执行顺序
先从一例子看join on 和 where执行结果的不同 CREATE TABLE "SCOTT"."A" ( "PERSON_ID" ) ...
- CentOS(Linux)安装KETTLE教程 并配置执行定时任务
1,首先是安装jdk,并设置环境变量 采用yum安装可不设置环境变量 2,下载kettle https://sourceforge.net/projects/pentaho/files/Data%20 ...
- 高程(4):执行环境、作用域、上下文执行过程、垃圾收集、try...catch...
高程三 4.2.4.3 一.执行环境 1.全局执行环境是最外层的执行环境. 2.每个函数都有自己的执行环境,执行函数时,函数环境就会被推入一个当前环境栈中,执行完毕,栈将其环境弹出,把控制器返回给之前 ...
随机推荐
- JavaScript——内置对象
- rabbitMq学习一
1.安装rabbitmq Windows下安装 首先,我们访问官网[https://www.rabbitmq.com/],点击Get Started. 选择下载安装,由于RabbitMQ使用Erlan ...
- Pod 实现机制
Pod 为了亲密性应用而存在: 两个应用需要通过 127.0.0.1 或者 Socket 通信: 两个应用之间发生文件交互: 两个应用发生频繁的调用 共享网络 Pod 中的所有容器拥有同一个 IP 地 ...
- Python 3的f-Strings:增强的字符串格式语法(指南)
最近也在一个视频网站的爬虫,项目已经完成,中间有不少需要总结的经验. 从Python 3.6开始,f-Strings是格式化字符串的一种很棒的新方法.与其他格式化方式相比,它们不仅更具可读性,更简洁且 ...
- PTA L1-006 连续因子【暴力模拟】
一个正整数N的因子中可能存在若干连续的数字.例如630可以分解为3*5*6*7,其中5.6.7就是3个连续的数字.给定任一正整数N,要求编写程序求出最长连续因子的个数,并输出最小的连续因子序列. 输入 ...
- js & document.execCommand
js & document.execCommand click copy document.execCommand 已废弃 过时的 此功能已过时.尽管它可能在某些浏览器中仍然可以使用,但不建议 ...
- PDF transform to PPT online & free
PDF transform to PPT online & free > Speaker Deck Share Presentationswithout the Mess Speaker ...
- 三维码 & 二维码 & 一维码
三维码 & 二维码 & 一维码 3D, 2D, 1D 防伪国家标准 -<结构三维码防伪技术条件> http://www.xinhuanet.com/tech/2019-12 ...
- JS实现点击加载更多效果
适用场景:后端直接把所有的文章都给你调出来了,但是领导又让做点击加载更多效果...(宝宝心里苦啊) 点击加载更多效果: 第一个和第二个参数分别是btn和ul的DOM(必填) ...
- NGK内存将为全球投资者创造新的财富增长机会
2020年,随着BTC的持续上涨带动了整个区块链市场的持续加温,同时金融市场也对金融体制做出了改变,关于金融和区块链的结合越来越被人们所认可,在此基础上,DeFi行业借此迎来了快速发展,据不完全统计, ...