# school_sys_cron_task 表文档 ## 表概述 **表名**: school_sys_cron_task **功能**: 系统定时任务管理表,用于管理和调度系统中的各种定时执行任务,支持cron表达式和周期性任务调度 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int NULL NO PRI NULL auto_increment select,insert,update,references status int NULL NO 1 select,insert,update,references 任务状态 count int NULL NO 0 select,insert,update,references 执行次数 title char(50) utf8mb4_general_ci NO select,insert,update,references 任务名称 type varchar(255) utf8mb4_general_ci NO select,insert,update,references 任务模式 cron 定时任务 crond 周期任务 crond_type char(200) utf8mb4_general_ci NO select,insert,update,references 任务周期 crond_length int NULL NO 0 select,insert,update,references 任务周期 task varchar(500) utf8mb4_general_ci NO select,insert,update,references 任务命令 data longtext utf8mb4_general_ci YES NULL select,insert,update,references 附加参数 status_desc varchar(1000) utf8mb4_general_ci NO 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 排序 ``` ## 功能用途 ### 主要功能 - **定时任务管理**: 管理系统中的各种定时执行任务 - **任务调度**: 支持cron表达式和周期性任务调度 - **任务状态监控**: 跟踪任务的执行状态和结果 - **任务执行统计**: 记录任务的执行次数和历史 - **任务参数管理**: 管理任务执行所需的参数和配置 - **任务结果记录**: 记录任务执行的结果和错误信息 - **任务时间管理**: 管理任务的执行时间和下次执行时间 - **任务排序**: 支持任务的优先级排序 - **任务生命周期**: 管理任务的创建、更新、删除等生命周期 ### 业务场景 - **数据备份**: 定时备份重要的业务数据 - **报表生成**: 定时生成各种统计报表 - **数据清理**: 定期清理过期或无用的数据 - **消息推送**: 定时发送通知消息或提醒 - **系统监控**: 定期检查系统状态和性能 - **财务结算**: 定时进行财务数据的结算和统计 - **考勤统计**: 定期统计员工考勤数据 - **课程提醒**: 定时发送课程开始提醒 - **缴费提醒**: 定期发送缴费到期提醒 - **数据同步**: 定时同步外部系统数据 - **日志归档**: 定期归档历史日志数据 - **性能优化**: 定时执行数据库优化任务 ## 关联关系 ### 主要关联表 - `school_sys_config`: 系统配置表 (任务配置关联) - `school_sys_log`: 系统日志表 (任务执行日志) - `school_personnel`: 人员表 (任务创建者关联) - `school_campus`: 校区表 (校区相关任务) - `school_member`: 会员表 (会员相关任务) - `school_course`: 课程表 (课程相关任务) - `school_pay`: 支付表 (支付相关任务) - `school_attendance`: 考勤表 (考勤统计任务) ### 关联说明 - **配置关联**: 任务可能需要读取系统配置参数 - **日志关联**: 任务执行过程和结果记录在系统日志中 - **人员关联**: 记录任务的创建者和管理者 - **校区关联**: 某些任务可能针对特定校区执行 - **业务关联**: 任务通常操作具体的业务数据表 - **数据关联**: 任务执行时会读取和处理相关业务数据 ## 索引建议 - **主键索引**: id (已存在) - **业务索引**: - status (任务状态查询) - type (任务类型查询) - next_time (下次执行时间查询) - last_time (最后执行时间查询) - create_time (创建时间查询) - delete_time (删除时间查询) - **复合索引**: - (status, next_time) (有效任务执行时间查询) - (type, status) (类型状态查询) - (delete_time, status) (有效任务查询) - **排序索引**: - sort (任务排序) - (sort, status) (有效任务排序) ## 注意事项 - **任务唯一性**: 相同功能的任务避免重复创建 - **时间精度**: 执行时间使用时间戳,确保精度和一致性 - **状态管理**: 任务状态变更需要原子性操作 - **并发控制**: 避免同一任务的并发执行 - **错误处理**: 任务执行失败时需要记录详细错误信息 - **资源管理**: 长时间运行的任务需要监控资源使用 - **任务依赖**: 处理任务间的依赖关系 - **执行超时**: 设置任务执行超时时间,避免死锁 - **重试机制**: 失败任务的重试策略和次数限制 - **日志记录**: 详细记录任务执行过程和结果 - **权限控制**: 任务的创建、修改、删除需要相应权限 - **数据备份**: 重要任务的配置和数据需要备份 - **监控告警**: 任务执行异常时需要及时告警 - **性能优化**: 避免任务执行影响系统正常运行 - **软删除**: 使用delete_time实现软删除,保留历史记录 - **参数验证**: 任务参数需要验证格式和有效性 - **版本管理**: 任务更新时保留历史版本信息 - **执行环境**: 确保任务执行环境的稳定性和安全性