jeecg-boot集成xxl-job调度平台,每秒/每分钟/手动都能执行成功,但是设置固定时间不触发?

本文主要是介绍jeecg-boot集成xxl-job调度平台,每秒/每分钟/手动都能执行成功,但是设置固定时间不触发?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是雄雄。

在这里插入图片描述

目录

这里写目录标题

    • 目录
    • bug说明
    • 解决bug的过程
    • 解决方法
    • 结论

今天在用jeecg-boot集成了的xxl-job的时候,遇到了个奇葩的问题(其实一点都不奇葩),投入了几个人,一起看这个问题,看了一天都,还没解决。后来一个不经意的瞬间,别人指导了下,才发现问题所在。

bug说明

我们的业务是与周有关的,用户通过小程序,设置每周的周几进行提醒,然后我们将具体的提醒信息生成cron表达式存在数据库中,顺便开启定时任务,让定时任务满足cron表达式后,自动触发方法去执行。

业务没有问题,流程没有问题,问题就出在了定时任务上。
👉问题就是:定时任务,设置成每秒/每分钟/手动都能执行成功,但是设置固定时间不执行,也没有报错。

写这个块儿代码的同事坚持说,以前是可以用的,现在不可以用了。(就因为这句话,导致解决问题的思维一直是错的)

解决bug的过程

  1. 我们将微服务项目重新clean,构建,重启,不管用!!
  2. 我们将cron表达式,正解析反解析,不管用!!!(自认为不管用)
  3. 同事说之前是可以的,于是我们就回滚代码,回滚到可以时候的代码,还是不管用!
  4. 新建执行器,注册地址手动录入,自动注册,均不管用!
  5. 问了别人,也不管用!!

我们也知道,这个问题很好解决,很简单,就是哪里不小心给弄错了,或者哪个地方配置错了,只是就是不知道是哪里?

按理说,定时任务不触发,就是cron表达式的问题,但是检查了好几遍,没有问题啊,在线生成的次数太多了,导致我们都会手写cron表达式了。

💀大家看看,比如我想设置个周四的20:30提醒我,在线生成一下:
在这里插入图片描述
注意看星期的,是不是四,是吧?

解决方法

是你就错了,这特么的是星期三!!!是星期三!!!

我就是这样的,今天周四,就写了个4,到点看看执行了没?没有执行!

于是和同事们一直在纠结这个问题,为啥不执行呢?然后反反复复的看,咋还是不执行呢,于是大家围着一圈,一块看到底是哪里出问题了…

现在想想,真是无语了啊。
在这里插入图片描述

默默的把四改成五,就可以了。*

结论

cron表达是中。别的还没看出来,但是星期话的,得+1,+1,+1,记清楚了,得+1!!!
好了,千万得注意啊。

这篇关于jeecg-boot集成xxl-job调度平台,每秒/每分钟/手动都能执行成功,但是设置固定时间不触发?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/429211

相关文章

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

Spring MVC如何设置响应

《SpringMVC如何设置响应》本文介绍了如何在Spring框架中设置响应,并通过不同的注解返回静态页面、HTML片段和JSON数据,此外,还讲解了如何设置响应的状态码和Header... 目录1. 返回静态页面1.1 Spring 默认扫描路径1.2 @RestController2. 返回 html2

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

Python在固定文件夹批量创建固定后缀的文件(方法详解)

《Python在固定文件夹批量创建固定后缀的文件(方法详解)》文章讲述了如何使用Python批量创建后缀为.md的文件夹,生成100个,代码中需要修改的路径、前缀和后缀名,并提供了注意事项和代码示例,... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果5.

Python 标准库time时间的访问和转换问题小结

《Python标准库time时间的访问和转换问题小结》time模块为Python提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时... 目录模块介绍使用场景主要类主要函数 - time()- sleep()- localtime()- g

四种简单方法 轻松进入电脑主板 BIOS 或 UEFI 固件设置

《四种简单方法轻松进入电脑主板BIOS或UEFI固件设置》设置BIOS/UEFI是计算机维护和管理中的一项重要任务,它允许用户配置计算机的启动选项、硬件设置和其他关键参数,该怎么进入呢?下面... 随着计算机技术的发展,大多数主流 PC 和笔记本已经从传统 BIOS 转向了 UEFI 固件。很多时候,我们也

SpringCloud集成AlloyDB的示例代码

《SpringCloud集成AlloyDB的示例代码》AlloyDB是GoogleCloud提供的一种高度可扩展、强性能的关系型数据库服务,它兼容PostgreSQL,并提供了更快的查询性能... 目录1.AlloyDBjavascript是什么?AlloyDB 的工作原理2.搭建测试环境3.代码工程1.

Linux中chmod权限设置方式

《Linux中chmod权限设置方式》本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活... 目录设置基本权限命令:chmod1、权限介绍2、chmod命令常见用法和示例3、文件权限详解4、ch

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题

《解决mybatis-plus-boot-starter与mybatis-spring-boot-starter的错误问题》本文主要讲述了在使用MyBatis和MyBatis-Plus时遇到的绑定异常... 目录myBATis-plus-boot-starpythonter与mybatis-spring-b