You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
5.2 KiB
5.2 KiB
school_sys_schedule 表文档
表概述
表名: school_sys_schedule
功能: 系统计划任务管理表,用于管理和调度系统中的各种定时任务和周期性任务
字段说明
Field Type Collation Null Key Default Extra Privileges Comment
id int NULL NO PRI NULL auto_increment select,insert,update,references
addon varchar(255) utf8mb4_general_ci NO select,insert,update,references 所属插件
key varchar(255) utf8mb4_general_ci NO select,insert,update,references 计划任务模板key
status int NULL NO 1 select,insert,update,references 任务状态 是否启用
time varchar(500) utf8mb4_general_ci NO select,insert,update,references 任务周期 json结构
count int NULL NO 0 select,insert,update,references 执行次数
last_time int NULL NO 0 select,insert,update,references 最后执行时间
next_time int NULL NO 0 select,insert,update,references 下次执行时间
create_time int NULL NO 0 select,insert,update,references 创建时间
delete_time int NULL NO 0 select,insert,update,references 删除时间
update_time int NULL NO 0 select,insert,update,references 更新时间
sort int NULL NO 0 select,insert,update,references 排序
功能用途
主要功能
- 任务调度管理: 管理系统中各种定时任务的调度和执行
- 插件任务支持: 支持不同插件模块的专属定时任务
- 任务状态控制: 控制任务的启用、禁用状态
- 执行周期配置: 通过JSON结构灵活配置任务执行周期
- 执行统计: 记录任务的执行次数和执行历史
- 时间管理: 跟踪任务的最后执行时间和下次执行时间
- 任务排序: 支持任务的优先级排序和执行顺序
- 任务模板: 基于key值管理任务模板和配置
- 执行监控: 监控任务的执行状态和性能
业务场景
- 数据同步任务: 定期同步各系统间的数据
- 报表生成: 定时生成各类统计报表和分析数据
- 数据备份: 定期备份重要的业务数据
- 消息推送: 定时发送通知消息和提醒
- 数据清理: 定期清理过期数据和临时文件
- 统计计算: 定时计算业务指标和统计数据
- 系统维护: 定期执行系统维护和优化任务
- 缓存更新: 定时更新和刷新系统缓存
- 日志归档: 定期归档和压缩系统日志
- 健康检查: 定期检查系统和服务的健康状态
- 数据导入导出: 定时执行数据的导入导出任务
- 邮件发送: 定时发送邮件通知和报告
关联关系
主要关联表
school_sys_schedule_log: 任务执行日志表(任务执行记录)school_sys_addon: 插件表(任务所属插件)school_sys_cron_task: 定时任务表(具体的cron任务)school_sys_user: 系统用户表(任务创建者)school_campus: 校区表(任务执行范围)school_sys_config: 系统配置表(任务相关配置)school_sys_log: 系统日志表(任务执行日志)
关联说明
- 插件关联: addon字段关联到具体的插件模块
- 任务模板: key字段标识任务模板和配置类型
- 执行日志: 与执行日志表形成一对多关系
- 时间关联: 记录任务的创建、更新和执行时间
- 状态关联: 任务状态影响实际的执行调度
- 配置关联: time字段存储JSON格式的执行周期配置
- 监控关联: 与系统监控和告警系统关联
索引建议
- 主键索引: id(已存在)
- 插件索引: addon(按插件查询任务)
- 任务键索引: key(按任务模板查询)
- 状态索引: status(按状态查询活跃任务)
- 时间索引:
- next_time(下次执行时间查询)
- last_time(最后执行时间查询)
- create_time(创建时间查询)
- update_time(更新时间查询)
- 复合索引:
- (status, next_time)(查询待执行任务)
- (addon, status)(按插件查询活跃任务)
- (addon, key)(插件任务模板查询)
- (status, sort)(按状态和排序查询)
- 排序索引: sort(任务排序)
- 删除状态索引: delete_time(逻辑删除查询)
注意事项
- 时间精度: 确保执行时间的精确性和时区处理
- 并发控制: 防止同一任务的重复执行和并发冲突
- 异常处理: 建立完善的任务执行异常处理机制
- 性能监控: 监控任务执行的性能和资源消耗
- 日志记录: 详细记录任务执行的过程和结果
- 配置验证: 验证JSON格式的时间配置的正确性
- 资源管理: 合理管理任务执行时的系统资源
- 故障恢复: 建立任务执行失败的重试和恢复机制
- 权限控制: 严格控制任务的创建、修改和删除权限
- 数据一致性: 确保任务状态与实际执行状态的一致性
- 插件依赖: 处理任务与插件模块的依赖关系
- 时间同步: 确保服务器时间的准确性和同步
- 任务隔离: 不同插件的任务应该相互隔离
- 执行超时: 设置合理的任务执行超时时间
- 负载均衡: 在多服务器环境下合理分配任务执行
- 备份恢复: 重要任务配置需要定期备份