03.定时任务
# 一、定时任务改造背景与目标
传统若依平台定时任务在多租户场景下存在数据共享风险,不同租户的任务执行时易出现数据交叉读取问题,同时缺乏与低代码集成平台的联动能力,难以高效支撑大数据相关业务。本次改造以 **“数据隔离、能力扩展”** 为核心目标,一方面实现定时任务的租户级数据隔离,保障各租户数据安全独立;另一方面集成类似宜搭平台的集成自动化能力,拓展定时任务在大数据分析、采集、清洗等场景的应用边界。
# 二、核心改造特性
# (一)数据隔离模式:租户级数据独立运行
默认租户数据读取机制
改造后的定时任务会自动关联租户标识,任务执行时默认仅读取当前租户的业务数据,从底层杜绝跨租户数据访问。例如,租户 A 的 “订单数据统计” 任务仅读取租户 A 的订单表,租户 B 的同类型任务独立读取租户 B 数据,互不干扰。
数据隔离技术实现
通过在定时任务执行链路中植入租户上下文拦截器,结合若依平台已有的租户数据隔离表结构(如表中新增
tenant_id
字段),执行定时人任务时,切换对应租户下的数据库链接,实现数据互不干扰。
# (二)集成自动化能力:对接低代码平台拓展业务场景
宜搭式集成自动化联动
改造后的定时任务支持与类似宜搭的低代码集成平台对接,可通过可视化配置调用平台内的自动化流程。例如,定时任务触发后,自动调用简搭云的 “数据采集流程”(如采集第三方系统 API 数据)、“数据清洗流程”(如格式标准化、异常值剔除),无需手动编写复杂代码。
大数据业务适配能力
数据采集:定时任务可定时触发集成自动化的规则,多源数据采集(数据库、文件、API、IoT 设备等),采集结果自动同步至数据仓库或简搭云平台的数据集;
数据清洗:集成自动化配置清洗规则(如字段映射、去重、过滤规则),定时任务执行时按预设规则完成数据清洗,输出标准化数据;
数据分析:对接宜搭的报表与分析模块,定时任务将清洗后的数据推送至分析模型,自动生成业务报表(如销售趋势、用户行为分析)并推送至指定终端(邮件、企业微信、短信)。
任务 - 自动化流程联动监控
在若依平台的定时任务管理界面,可实时查看任务关联的自动化流程执行状态(成功 / 失败、执行时长、日志),若自动化流程异常,将与定时任务异常统一触发告警(如系统通知、短信告警),便于问题快速定位。
# 三、核心优势
数据安全保障:租户级数据隔离从根本上解决多租户场景下的数据泄露、交叉污染问题,符合企业级数据安全规范;
业务效率提升:无需开发人员重复编写大数据相关代码,通过低代码集成自动化,快速实现数据采集、清洗、分析闭环;
兼容性与扩展性:改造基于若依平台原有定时任务框架,不破坏现有业务逻辑,同时支持后续对接更多第三方平台(如 BI 工具、数据中台);
易用性优化:保持若依平台原有操作习惯,新增的隔离配置、自动化联动功能均通过可视化界面实现,降低运维与使用门槛。
# 四、典型应用场景
多租户 SaaS 系统数据统计:如 CRM 系统中,各租户定时生成专属的客户增长报表,数据独立统计;
电商平台数据同步与分析:定时采集各店铺销售数据,通过宜搭自动化流程清洗后,生成店铺业绩分析报表并推送至商家;
政务数据整合:定时采集各部门上报数据,经清洗后同步至政务数据中台,支撑后续的政务决策分析。
# 五、技术架构简述
改造后的定时任务架构分为三层:
任务调度层:基于若依原有 Quartz 调度框架,新增租户上下文管理模块,负责任务触发与租户标识传递;
数据隔离层:包含租户拦截器、数据权限校验组件,确保任务执行时数据访问范围可控;
集成自动化层:提供类似宜搭平台 API 对接适配器、自动化流程调用 SDK,实现定时任务与低代码流程的联动。
# 五、操作界面
操作界面如下:
新增调用方法:支持选择,点击选择弹出继承所属定时任务的自动化列表界面,选择对应的集成自动化接口调用触发。