社区
Web 开发
帖子详情
定时任务中程序异常挂起了,怎么让任务继续执行??
miracleliu
2013-06-17 10:43:41
描述:
一个timer定时任务,每天执行几个方法。
不知道什么原因,有时候周五会down掉,timer不再继续执行。并非每周五都会down。
说明:
所有的任务都加了try catch的,
看了日志,这一天的任务没执行完,所以第二天的timer就不执行了。
有什么办法能让这个timer即使前一天的没执行完,新的一天也要开始执行?
...全文
1293
6
打赏
收藏
定时任务中程序异常挂起了,怎么让任务继续执行??
描述: 一个timer定时任务,每天执行几个方法。 不知道什么原因,有时候周五会down掉,timer不再继续执行。并非每周五都会down。 说明: 所有的任务都加了try catch的, 看了日志,这一天的任务没执行完,所以第二天的timer就不执行了。 有什么办法能让这个timer即使前一天的没执行完,新的一天也要开始执行?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
且活且珍惜
2013-06-19
打赏
举报
回复
4L的想法比较认同
北吹
2013-06-19
打赏
举报
回复
Timer本身是基于一个被单线程监听的队列来设计的,这种问题属于它本身设计的缺陷。 最好的办法还是使用quartz,用线程池来处理定时任务。 用代码根据业务来控制定时任务会有很多问题,一个是业务本身允不允许你这样强制终止,二是多一个定时任务你就要多考虑一次业务控制,这种思路业务耦合性太强。
l_9style
2013-06-19
打赏
举报
回复
这个情况,你只能自己做一个逻辑来处理,在前一天任务没执行完,而需要执行的第二天的任务的时候,去终止掉前一天未执行完成的任务,让你的timer自然的进入下一个周期。
zuxianghuang
2013-06-19
打赏
举报
回复
定时器是这样的,比如一个小时执行一次 的,如果一个小时没有执行完,新的一次又启动了,那么就会超时了,。 目前我们采用的方式是,方法同步,如果上次没执行完,这次定时启动时,就进入等待,(因为我们要保证每次都执行完。)
biq园
2013-06-18
打赏
举报
回复
定时服务,只在系统启动时初始化类,后续调用时是不会在再初始化类。你看下你有没有把控制变量写成公用变量了:你把所有公用变量都写在方法中试下。
miracleliu
2013-06-18
打赏
举报
回复
没人回。。。唉
java
定时
任务
假死
定时
任务
阻塞 线程池消失
问题现象: 现象1.开启
定时
任务
线程池,线程池貌似消失了,
定时
任务
突然
中
断,既不执行也不报错 现象2:跟换
定时
任务
实现方式,使用@Scheduled,同意的现象依然出现了,
定时
任务
跑到一定频率突然不动 解决思路: 1.
程序
未抛出
异常
,某个时期却突然不在执行,怀疑线程阻塞了 2.查询jvm线程状态(jstackjava进程ID >threadDump.log)将dump日志下载分析,发现该线程期处于runnable状态,其他任...
定时
任务
跑着跑着就停止问题
场景
定时
任务
拉取数据。 到月底的时候一看,半个月没跑了,很好,这半个月的数据手动补回来吧。 解决方案 可能的原因不只一种。 代码
中
有错误数据
定时
任务
一般用于批量跑数据。 如果有一条数据有问题,例如金额是 abc1324,解析为数字的时候报错。 那么每次执行这个都报错。 解决方案 1、修改数据为正确数据。 2、增加容错性, 例如try catch加在for循环的单条记录里。 这样一条错误,不会影响其他。 请求超时 这个问题原因也很多,如果请求超时了。
定时
任务
会一直等在这里。后续的
定时
任务
肯定没法执行。
Java线上
定时
任务
不定期挂掉问题分析
问题背景 收到频繁的告警邮件,
定时
任务
调度失败,查看xxl-job的执行器列表是空的,但是服务又显示健康。 查看历史
任务
执行记录发现执行器是依次递减,由于是线上服务,只能先重启,然后线程日志也没有,同时尝试访问服务的健康检查接口,发现健康检查接口访问不通,应该是服务已经挂了,但是因为服务配置的TCP健康检查,没鲸云没有检测出来服务
异常
(血淋淋的教训)。 总结问题现象:xxl-job的执行器列表为空,TCP检测正常,服务显示正常,但是http健康检查接口访问不了,服务其实处于挂掉状态。 初步排查过程 1、
【celery】celery分布式处理异步
定时
任务
总结
文章目录前言> 什么是celery?>celery工作原理> celery可以干什么?> celery有什么优点?一、celery的安装二、celery异步
任务
的执行三、celery
定时
任务
的执行1,在固定时间执行2,在固定时间后执行3,在固定周期执行四、在Django
中
使用celerycelery_tsaksconfig.py代码main.py代码sms__init__.pytasks.py篇尾 前言 > 什么是celery? celery是一个简单灵活的分布式系统,可以实
从
定时
任务
-到
任务
调度系统xxl-job
定时
任务
的今生前世以及xxl-job调度系统
Web 开发
81,092
社区成员
341,716
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章