T0.9: 注册表三表 DDL(01_schema.sql) + JPA 实体/Repository + H2 MODE=MySQL round-trip 与唯一约束测试
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
-- =====================================================================
|
||||
-- 开放接口中心 网关库表(T0.9)
|
||||
-- 库:open_gateway(projman provision 建;本脚本由 T1.7 生产导入,可重复执行)
|
||||
-- 方言:MySQL
|
||||
-- =====================================================================
|
||||
|
||||
DROP TABLE IF EXISTS open_api_route;
|
||||
CREATE TABLE open_api_route (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
target_code VARCHAR(32) NOT NULL COMMENT '目标应用 ctx(usermsg/notice/...)',
|
||||
path_pattern VARCHAR(256) NOT NULL COMMENT 'Ant 风格;匹配剥掉 target 首段后的路径,如 /oapi/message/**',
|
||||
http_method VARCHAR(8) NOT NULL DEFAULT '*' COMMENT 'GET/POST/PUT/DELETE/*',
|
||||
visibility VARCHAR(16) NOT NULL DEFAULT 'INTERNAL' COMMENT 'INTERNAL/EXTERNAL',
|
||||
auth_mode VARCHAR(16) NOT NULL DEFAULT 'SIGNED' COMMENT 'SIGNED/ANON/OPTIONAL',
|
||||
cache_ttl_seconds INT NOT NULL DEFAULT 0,
|
||||
cache_scope VARCHAR(16) NOT NULL DEFAULT 'CALLER' COMMENT 'CALLER/GLOBAL',
|
||||
rate_limit_qps INT NOT NULL DEFAULT 0 COMMENT '0=不限',
|
||||
timeout_ms INT NOT NULL DEFAULT 30000,
|
||||
request_body_limit_mb INT NOT NULL DEFAULT 10,
|
||||
enabled TINYINT NOT NULL DEFAULT 1,
|
||||
remark VARCHAR(256),
|
||||
gmt_create DATETIME NOT NULL,
|
||||
gmt_modified DATETIME NOT NULL,
|
||||
UNIQUE KEY uk_route (target_code, path_pattern, http_method)
|
||||
);
|
||||
|
||||
DROP TABLE IF EXISTS open_api_log;
|
||||
CREATE TABLE open_api_log (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
ts DATETIME(3) NOT NULL,
|
||||
caller_app_key VARCHAR(64) COMMENT 'ANON 记 anonymous;401 且无 appKey 记 NULL',
|
||||
target_code VARCHAR(32) NOT NULL,
|
||||
method VARCHAR(8) NOT NULL,
|
||||
path VARCHAR(256) NOT NULL COMMENT '剥掉 target 首段后的路径(与注册表 path_pattern 同一坐标系)',
|
||||
status INT NOT NULL COMMENT '网关出口 HTTP 状态',
|
||||
backend_code INT COMMENT '提供方业务 code(响应为 JSON 信封时尽力解析,否则 NULL)',
|
||||
cost_ms INT NOT NULL,
|
||||
KEY idx_ts (ts),
|
||||
KEY idx_caller_ts (caller_app_key, ts),
|
||||
KEY idx_target_ts (target_code, ts)
|
||||
);
|
||||
|
||||
DROP TABLE IF EXISTS open_api_stat_daily;
|
||||
CREATE TABLE open_api_stat_daily (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
stat_date DATE NOT NULL,
|
||||
target_code VARCHAR(32) NOT NULL,
|
||||
caller_app_key VARCHAR(64) NOT NULL,
|
||||
total INT NOT NULL DEFAULT 0,
|
||||
err_total INT NOT NULL DEFAULT 0,
|
||||
avg_cost_ms INT NOT NULL DEFAULT 0,
|
||||
UNIQUE KEY uk_stat (stat_date, target_code, caller_app_key)
|
||||
);
|
||||
Reference in New Issue
Block a user