OA流程节点超时功能的技术实现与优化策略
创作时间:
作者:
@小白创作中心
OA流程节点超时功能的技术实现与优化策略
引用
CSDN
1.
https://blog.csdn.net/qq_31614535/article/details/139899674
在OA系统中,节点超时功能是一个关键的技术特性,它能够确保流程的顺畅进行,避免任务因为个别环节的延误而影响整体进度。本文将探讨OA系统中节点超时功能的技术实现和优化策略。
前台设置
系统管理员在管理后端设置对应的流程节点相关超时设置,可分为超时提醒和超时处理两大类:
- 超时提醒:只提醒,不处理流程
- 超时处理:会处理流程
系统设计实现
在应用系统启动的时候,会起多个线程进行超时功能的运行。系统启动时搜索所有节点超时的相关数据,初始化线程以及一些队列。
在泛微OA中,该功能实现方式为时钟轮 + 延时队列模式。与机器人节点类似,在集群环境中只有主节点处理具体业务逻辑,子节点只通过Redis发布数据,不参与超时处理任务。
核心启动类为OvertimeBiz,时间轮的具体实现为BaseOvertimeThread。前台保存超时节点设置后,会放入队列中,OvertimeBiz中会有线程监控这个队列。
监听到队列有新内容后,则添加到任务中,并区分是超时提醒还是超时处理。如果任务在时钟轮上的刻度,则放入延迟队列中等待消费;如果不在,则放入父时间轮。
系统启动时,初始化时间轮相关数据以及线程,这里按秒计算,一轮为60秒,启动后有单独线程模拟指针运作。当指针跳到下个刻度时,获取延迟队列中符合条件的首个元素进行超时任务的处理,并区分是超时提醒还是超时处理。
数据存储
节点超时数据会存储在数据库表中。例如,当A员工收到某个流程后未操作时,系统会取该员工收到流程的时间加上前台设计的超时任务,计算出该流程将在未来多少秒后超时。
总结
节点超时功能是OA系统中一个重要的技术特性,通过时钟轮和延时队列的结合使用,可以有效地实现流程监控和自动处理。虽然本文仅介绍了该功能的基本实现原理,但这些信息对于理解其技术细节和优化策略具有重要参考价值。
本文原文来自CSDN
热门推荐
战国四大公子之首黄歇传奇人生
买股票前,最好记住这4条股市真相
感恩、励志与奉献:照亮人生之路的三盏明灯
轻松兼职?当心掉入犯罪陷阱!
韩启德、潘建伟等多位院士领衔,《十万个为什么》第七版启动
CPU超频的作用:提升计算性能的技术解析
徒步广元金牛道,感受千年古蜀道,见证真实的古代交通陆路活化石
阿立哌唑片:为精神分裂症患者带来新的治疗选择
办公软件怎么学的更快些
大裁员,瑞银集团也扛不住了!
什么样的镜头适合拍人像?小白镜头选购指南
深中通道:重绘粤港澳大湾区经济版图
德州味道大柳面:金丝缠碗,舌尖上的鲁北风情
女孩房间里摆满“迪士尼” 公主文化让她们患上“公主病”?
射手女冷淡怎麼辦?掌握她的心靈之鑰
除了C、C++、汇编以外还有哪些可以直接管理内存的语言
慢性胆囊炎怎么预防
《刺猬》:温情的魔幻现实主义
北大荒集团建三江分公司智慧农业赋新能 春耕尽显“科技范儿”
十三个月宝宝吃母乳贫血怎么办
为什么会有脚底板痛?带你认识「足底筋膜炎」告诉你如何舒缓及预防
盘点《熊出没》到目前为止的大电影 你最喜欢哪一部呢
《杨清娟八字命局揭秘:独特组合背后的命运密码》
诗路天台┃《夜宿国清寺题更好堂》 南宋•沈揆
相思病是什麼意思?
跑步机上5公里和实际跑步5公里,两者有什么区别?医生来说说
最新狗界排行榜:“最聪明”和“最笨”的狗,你养对了吗?
西电《雷达原理》课程笔记三-雷达接收机
一年仅5家医药公司上市!当A股IPO收紧,中国Biotech的钱从哪里来?
如何评估基金的投资价值和风险?基金的风险评估对投资决策有何作用?