用 linux 的 crontab,每隔 5 分钟运行一次实现容易,再加个限定时段就该如何实现?
https://crontab.guru/
*/5 6-18 * * *
搞个 shell 脚本定时杀掉然后再启动再结合 crontab 用~
白天一年四季在变的吧. 还得联网查询?
顶 2 楼,或者在每 5 分钟执行一次,然后在执行脚本内判断是不是白天
啥是白天,具体讲讲
*/5 9-21 * * * command
这种?
crontab 支持时间段的, 以前用 python 库 plan 处理过批量调度的事情. 虽然现在已经是 systemd 的时代了
问个题外话: 现在是不是特别流行用"如果"代替"如何"
如果实现了, 就能怎么样呢?
打错字了。。
起飞。。减少目标网站负载
感谢
我就随口一问, 因为见过超过十次了... 在想是不是新的流行说法
反正定时任务尽量还是别用原生 crontab 了, 找个靠谱点的调度后台算了, 最近也在调研处理定时任务流的, 在 azkaban 和 airflow 里面转悠
回复白天时间不一样的那些人,咋不回复极昼极夜啊???
应该加入 geoip 库,根据 IP 判断服务器所在城市和经纬度,再通过日期和经纬度计算出日出日落时间,以此判断是不是在白天(手动狗头
为什么尽量不用原生
分 时 日 月 周
话说你对白天的时间定义是什么样子的,
这个需求不明确呀
最好写程序里吧,程序里定时跑,我的程序是半小时,定义范围也是很容易的
所以 9 点-21 点是白天?
原生用 systemd 还好, cron 一开始用的舒服, 后来被同事东一块西一块还没注释的 cron 给玩死了... 虽然我上份工作用 supervisord + plan(Python 库, 定制 crontab 任务的) 做的通用脚本调度也能玩死不少交接的...
一两个任务, 服务器少的时候, crontab 用着还好, 但是考虑极限情况: 多账户, 多机器, 几百个任务... 这不叫运维了, 这叫防离职黑魔法
Linux 有原生 API 来看日夜的吧。。。9-21 也太怪了
为啥尽量不用 crontab 啊
哈哈,会允许你随便乱跑 crontab 的公司。。。真的是有无数合法的保障自己被裁后,让接手的人从零开始重新构架整个服务器的方法。。。