延时任务和定时任务

author author     2022-09-13     590

关键词:

1延迟任务
at命令发起的任务都是一次性的
at +time
>命令
>ctrl+d                                                         表示发起动作

技术分享

at         -l | atq                                                         查看延迟任务

            -d | atrm                                                      取消指定任务
            -c                                                                 查看任务内容

技术分享

技术分享

@@由于使用-c查看的内容较多,因此只截取了部分图片

            -now+1min                                                  延迟一分钟
            -f file                                                            延迟执行文件中的内容
技术分享

at命令执行权力的设定

 /etc/at.deny                                                                  ##延迟任务用户黑名单,在此名单中出现的用户不能执行at命令

@@先创建一个普通用户,切换到普通,此时还未编辑/etc/at.deny下的内容,发现普通用户可以使用at命令执行任务。

技术分享

@@此时编辑/etc/at.deny,这是一个黑名单,加入刚刚创建的普通用户,重复上面的操作

技术分享

技术分享

/etc/at.allow                                                                                        ##延迟任务用户白名单,名单默认不存在,一旦出现,黑名单即失效
                                                                                                          ##系统所有用户默认不能执行at命令,只有白名单中出现的才能够执行

@@白名单是默认不存在的,一旦编辑,只有出现在白名单中的用户才能执行at命令,但是root用户是不在此权限中的

编辑/etc/at.allow,在其中加入westos用户时

技术分享

2.定时任务

定时任务是永久的

定时任务程序crond,在系统中每分钟做一次任务扫描

crontab -u username                 -e                                      建立定时任务

技术分享

                                              -r                                       删除定时任务

                                              -l                                       查看定时任务

技术分享

定时任务的格式

    *        *        *        *        *            命令

    ^        ^        ^        ^        ^

   分      时      天      月      周

eg:

    *        *        *        *        */5                    ##每周五

    *        *        *        * /1-15       *              ##每月的1-15号

    *        * /3       *        *        *                    ##每隔三个小时

vim /etc/cron.d/filename
分钟     小时     天     月     周      用户     动作
   *           *        *       *      *        root      rm -fr /mnt/*              ##超级用户梅分钟清理一次 /mnt 

技术分享

@@一个窗口执行命令另一个窗口做监控

技术分享

@@一分钟后,/mnt/被清理

crondtable命令的执行权力的设定

/etc/crond.deny                                                                                  ##定时任务用户黑名单,在此名单中出现的用户不能执行crond命令

@@在/etc/crond.deny中加入westos用户

技术分享

 /etc/crond.allow                                                                                ##定时用户白名单,名单默认不存在,一旦出现,黑名单即失效
                                                                                                         ##系统用户默认不能执行crond命令,只有白名单中出现的才能执行

@@白名单的用户权限高于黑名单,当在白名单中加入westos用户时,发现黑名单失效,westos用户可以执行crond命令

系统临时文件
系统中服务在正常运行时会产生临时文件
/usr/lib/tmpfiles.d/*conf                                                                        ##系统中临时文件的配置(必须以.conf 结尾)


文件类型     文件名称      文件权限   文件所有人  文件所有组  文件存在时间
    d              /mnt/test         777              root               root               1min

在/mnt下令时建立一个test目录

技术分享

systemd-tmpfiles --create /usr/lib/tmpfiles.d/*                                           ##执行临时文件配置
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*                                            ##清理临时文件

技术分享

技术分享

@@在test下建立文件,在第一分钟内,执行清理命令发现没有被删除,第二分钟时,文件被自动清理



系统延时及定时任务

系统延时及定时任务1.系统延时任务at命令发起的延时任务都时一次性的at+time[[email protected]~]#at3:07at>touchfile##延迟动作at><EOT>##ctrl+d表示发起动作job3atTueJan2303:07:002018at-l|atq#查看当前任务atrm|at-d#取消指定任务at-c#查看任... 查看详情

redis延时任务看一篇成高手系列2

引言在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信 对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题... 查看详情

系统定时任务及延时任务(代码片段)

...,如何生成可参考右边的帮助文档文章目录一、系统延时任务二、at任务的黑白名单三、系统定时任务一、系统延时任务先开一个监控watch-n1lsRl/mnt之后[root@localhost~]#at23:37##设定任务执行时间at>rm-fr/mnt/*##任务动作at><E... 查看详情

系统延时与定时任务

一、延时任务  在Linux中延时任务是临时的,可以指定某一个任务在将来的特定时间运行1、at命令  基本操作格式:123[[email protected] ~]# at now+1minat> date<EOT>   #EOT代表Ctrl+D来保存这... 查看详情

系统延时与定时任务

一、延时任务  在Linux中延时任务是临时的,可以指定某一个任务在将来的特定时间运行1、at命令  基本操作格式:123[[email protected] ~]# at now+1minat> date<EOT>   #EOT代表Ctrl+D来保存这... 查看详情

系统延时与定时任务

一、延时任务  在Linux中延时任务是临时的,可以指定某一个任务在将来的特定时间运行1、at命令  基本操作格式:123[[email protected] ~]# at now+1minat> date<EOT>   #EOT代表Ctrl+D来保存这... 查看详情

延时任务与定时任务

 1.系统延迟任务发起命令at11:03at>touch/mnt/file{1..10}##要执行的命令at><EOT><按ctrl+D>##任务发起job2atSatNov 711:03:002015   at-l##查看任务列表2SatNov 711:03:002015aroot atrm 查看详情

每日一博-延时任务的多种实现方式解读(代码片段)

文章目录Pre延时任务VS定时任务SolutionsDB轮询核心思想DemoCode优缺点JDK的DelayQueue核心思想DemoCode优缺点时间轮算法核心思想DemoCode优缺点核心思想DemoCode优缺点Pre每日一博-使用环形队列实现高效的延时消息延时任务VS定时任务举个... 查看详情

juc并发编程共享模式之工具threadpoolexecutor--任务调度线程池定时任务/延时执行(scheduledthreadpoolexecutor延时执行/定时执行)(代(代码片段)

1.任务调度线程池1.1ScheduledThreadPoolExecutor延时执行示例代码(任务都延时1s执行):packagecom.tian;importjava.util.Date;importjava.util.concurrent.ExecutionException;importjava.util.concurrent.Executors;importj 查看详情

延时任务实现方案总结(代码片段)

#引言在开发中,往往会遇到一些关于延时任务的需求。例如生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一... 查看详情

定时与延时任务

一、延时任务atd服务linux下一次性定时计划任务命令的守候进程,是一种开机自启的服务at命令是在atd服务开启的情况下才可以进行操作,否则会出现报错。at类似打印进程,会把任务放到/var/spool/at目录中,到指定时间运行它。at... 查看详情

运维学习之系统延时任务定时任务以及临时文件的管理

系统的延时及定时任务1.延时任务at命令发起的任务都是一次性的at+time下图表示在21:22分进行删除命令650)this.width=650;"src="https://s2.51cto.com/wyfs02/M01/9D/8E/wKioL1mBzXSg9_rrAACkXgBsUdY479.png"style="float:none;"title="Screenshotfrom2017-08 查看详情

延时任务实现方案总结(代码片段)

#引言在开发中,往往会遇到一些关于延时任务的需求。例如生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一... 查看详情

rabbitmq延时队列实现定时任务(代码片段)

场景实际业务中对于定时任务的需求是不可避免的,例如,订单超时自动取消、每天定时拉取数据等,在Node.js中系统层面提供了setTimeout、setInterval两个API或通过node-schedule这种第三方库来实现。通过这种方式实现对于简单的定时... 查看详情

第203天学习打卡(rabitmq延时队列实现定时任务)

RabbitMQ延时队列(实现定时任务)TTL消息存活时间MQ:保证数据最终的一致性B站学习网址:全网最强电商教程《谷粒商城》对标阿里P6/P7,40-60万年薪_哔哩哔哩_bilibili 查看详情

基于rabbitmq实现分布式延时任务调度(代码片段)

一.分布式延时任务传统做法是将延时任务插入数据库,使用定时去扫描,比对任务是否到期,到期则执行并设置任务状态为完成。这种做法在分布式环境下还需要对定时扫描做特殊处理(加分布式锁)避免任务被重复执行。然... 查看详情

采用简易的环形延时队列处理秒级定时任务的解决方案

 业务背景在稍微复杂点业务系统中,不可避免会碰到做定时任务的需求,比如淘宝的交易超时自动关闭订单、超时自动确认收货等等。对于一些定时作业比较多的系统,通常都会搭建专门的调度平台来管理,通过创建定时器... 查看详情

juc并发编程共享模式之工具threadpoolexecutor--任务调度线程池定时任务/延时执行(timer的缺点)(代码片段)

1.任务调度线程池1.1Timer的缺点在『任务调度线程池』功能加入之前,可以使用java.util.Timer来实现定时功能,Timer的优点在于简单易用,但由于所有任务都是由同一个线程来调度,因此所有任务都是串行执行的,... 查看详情