附录
20. 任务存储库架构
本附录提供了任务存储库中使用的数据库架构的 ERD。
20.1. 表信息
存储任务执行信息。
列名称 | 必填 | 类型 | 字段长度 | 笔记 |
---|---|---|---|---|
TASK_EXECUTION_ID |
真 |
BIGINT |
X |
Spring Cloud Task Framework 在应用程序启动时建立从 获取的下一个可用 ID。或者,如果记录是在 task 之外创建的,则必须在创建记录时填充该值。 |
START_TIME |
假 |
日期时间 |
X |
应用程序启动时的 Spring Cloud Task Framework 建立值。 |
END_TIME |
假 |
日期时间 |
X |
应用程序出口处的 Spring Cloud Task Framework 建立值。 |
TASK_NAME |
假 |
瓦查尔 |
100 |
应用程序启动时的 Spring Cloud Task Framework 会将其设置为“应用程序”,除非用户使用此处讨论的 spring.cloud.task.name 建立名称 |
EXIT_CODE |
假 |
整数 |
X |
遵循 Spring Boot 默认值,除非被用户覆盖,如此处所述。 |
EXIT_MESSAGE |
假 |
瓦查尔 |
2500 |
用户定义,如此处所述。 |
ERROR_MESSAGE |
假 |
瓦查尔 |
2500 |
应用程序出口处的 Spring Cloud Task Framework 建立值。 |
LAST_UPDATED |
真 |
日期时间 |
X |
应用程序启动时的 Spring Cloud Task Framework 建立值。或者,如果记录是在 task 之外创建的,则必须在创建记录时填充该值。 |
EXTERNAL_EXECUTION_ID |
假 |
瓦查尔 |
250 |
如果设置了该属性,则 Spring Cloud Task Framework 会在应用程序启动时将其设置为指定的值。更多信息可以在这里找到 |
PARENT_TASK_EXECUTION_ID |
假 |
BIGINT |
X |
如果设置了该属性,则 Spring Cloud Task Framework 会在应用程序启动时将其设置为指定的值。更多信息可以在这里找到 |
存储用于任务执行的参数
列名称 | 必填 | 类型 | 字段长度 |
---|---|---|---|
TASK_EXECUTION_ID |
真 |
BIGINT |
X |
TASK_PARAM |
假 |
瓦查尔 |
2500 |
用于将任务执行链接到批处理执行。
列名称 | 必填 | 类型 | 字段长度 |
---|---|---|---|
TASK_EXECUTION_ID |
真 |
BIGINT |
X |
JOB_EXECUTION_ID |
真 |
BIGINT |
X |
用于此处讨论的功能。single-instance-enabled
列名称 | 必填 | 类型 | 字段长度 | 笔记 |
---|---|---|---|---|
LOCK_KEY |
真 |
煳 |
36 |
this 锁的 UUID |
地区 |
真 |
瓦查尔 |
100 |
用户可以使用此字段建立一组锁。 |
CLIENT_ID |
真 |
煳 |
36 |
包含要锁定的应用程序名称的任务执行 ID。 |
CREATED_DATE |
真 |
日期时间 |
X |
条目的创建日期 |
可以在此处找到用于为每种数据库类型设置表的 DDL。 |
20.2. SQL 服务器
默认情况下,Spring Cloud Task 使用序列表来确定 for table。
但是,如果在使用 SQL Server 时同时启动多个任务,这可能会导致表上发生死锁。
解决方法是删除表并使用相同的名称创建序列。例如:TASK_EXECUTION_ID
TASK_EXECUTION
TASK_SEQ
TASK_EXECUTION_SEQ
DROP TABLE TASK_SEQ;
CREATE SEQUENCE [DBO].[TASK_SEQ] AS BIGINT
START WITH 1
INCREMENT BY 1;
将 the 设置为比当前执行 ID 更高的值。START WITH |
21. 构建此文档
此项目使用 Maven 生成此文档。要为自己生成它,
运行以下命令:。$ ./mvnw clean package -P full