如何处理未部署或无许可的调度任务堆积问题?
问题描述
业务预置了调度计划,但有些客户并没有部署相应节点或没有许可,然后产生了任务堆积没有消费,这种无效任务如何清理?
解决方法
调度没有消费者的队列可以照以下步骤清理并禁用相关计划,后续不会产生新的任务
V6.0以上版本,可在应用启停中配置相关内容,禁用所属应用后,调度任务不会继续执行。
详细步骤
在Monitor平台mq监控中,搜索“schedule.”如果发现有队列一直积累且没有消费者
以下图为例,根据队列名知道该队列所属应用的appid为acqs
任意节点搜索系统属性,registedAppIds
根据步骤2,查询到积累mq消息的appid为 acqs,确认是否在registedAppIds中存在,
如果不存在,则是否需要部署改应用,不需要就是这个应用的调度任务不需要运行,可以禁止该计划。
根据sql查出该应用的所有计划,系统库,手工禁用这些计划,并在mq控制台清理堆积的队列即可。
select j1.fid, j1.fjobid,j1.fnumber as "计划编码", j1.fname as "计划名称", t3.fnumber as "作业编码", j1.fplan,j1.fdesc,j1.fcyclenum, j1.frepeatmode, j1.fstarttime,j1.fendtime, t4.fappid, j1.fstatus as "schedule status", t3.fstatus as "jobstatus" from (select case when t2.fjobnumber is null then t1.fjobid when t2.fjobnumber = '' then t1.fjobid when t2.fjobnumber = ' ' then t1.fjobid else t2.fjobnumber end as fjobid,t1.fid,t1.fstarttime,t1.fendtime,t1.fplan,t1.frepeatmode,t1.fcyclenum,t1.fhost,t1.fstatus, t1n.fsfailnotify,t1n.fssuccessnotify,t1n.fsnotifytype,t1n.fmsgreceiver,t1n.fsmsgcontent,t1n.fschprincipal,t1n.fstimeout,t1.fdesc, t1.fnumber, c.fname from t_sch_schedule as t1 left outer join t_sch_schedule_n as t1n on t1.fid = t1n.fid left join t_sch_schedule_entry t2 on t1.fid = t2.fid left join t_sch_schedule_l c on t1.fid = c.fid and c.flocaleid = 'zh_CN' ) as j1 left join t_sch_job t3 on j1.fjobid = t3.fid left outer join t_sch_job_n as t3n on t3.fid = t3n.fid left outer join t_sch_taskdefine as t4 on t4.fid = t3.ftaskdefineid where t4.fappid in ('acqs')
如何处理未部署或无许可的调度任务堆积问题?
问题描述业务预置了调度计划,但有些客户并没有部署相应节点或没有许可,然后产生了任务堆积没有消费,这种无效任务如何清理?解决方法调度...
点击下载文档
上一篇:自定义卡片展示待办列表开发案例下一篇:影像集成整体介绍
本文2024-09-23 00:34:27发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-140324.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章