feat: 更新端口配置并添加监控支持

fix: 修复测试配置和依赖检查

perf: 优化雪花算法性能

refactor: 清理冗余代码和未使用的导入

style: 统一代码格式和注释

test: 添加单元测试和集成测试

ci: 更新CI配置和构建脚本

chore: 更新依赖和配置文件
This commit is contained in:
张翔
2026-03-13 08:50:19 +08:00
parent fe2e4110dd
commit 9f8bf041c3
169 changed files with 3565 additions and 132 deletions
+104
View File
@@ -0,0 +1,104 @@
-- Performance Optimization SQL Script
-- This script adds necessary indexes to improve query performance
-- Enable slow query logging (PostgreSQL)
ALTER SYSTEM SET log_min_duration_statement = 1000;
SELECT pg_reload_conf();
-- ============================================
-- User Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_users_username ON sys_users(username);
CREATE INDEX IF NOT EXISTS idx_users_email ON sys_users(email);
CREATE INDEX IF NOT EXISTS idx_users_status ON sys_users(status);
CREATE INDEX IF NOT EXISTS idx_users_deleted_at ON sys_users(deleted_at);
CREATE INDEX IF NOT EXISTS idx_users_created_at ON sys_users(created_at);
-- ============================================
-- Role Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_roles_role_key ON sys_roles(role_key);
CREATE INDEX IF NOT EXISTS idx_roles_role_name ON sys_roles(role_name);
CREATE INDEX IF NOT EXISTS idx_roles_status ON sys_roles(status);
CREATE INDEX IF NOT EXISTS idx_roles_deleted_at ON sys_roles(deleted_at);
-- ============================================
-- Menu Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_menus_parent_id ON sys_menus(parent_id);
CREATE INDEX IF NOT EXISTS idx_menus_status ON sys_menus(status);
CREATE INDEX IF NOT EXISTS idx_menus_menu_type ON sys_menus(menu_type);
-- ============================================
-- Config Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_config_config_key ON sys_config(config_key);
CREATE INDEX IF NOT EXISTS idx_sys_config_deleted_at ON sys_config(deleted_at);
-- ============================================
-- Notice Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_notice_status ON sys_notice(status);
CREATE INDEX IF NOT EXISTS idx_sys_notice_deleted_at ON sys_notice(deleted_at);
CREATE INDEX IF NOT EXISTS idx_sys_notice_created_at ON sys_notice(created_at);
-- ============================================
-- File Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_file_file_name ON sys_file(file_name);
CREATE INDEX IF NOT EXISTS idx_sys_file_file_type ON sys_file(file_type);
CREATE INDEX IF NOT EXISTS idx_sys_file_deleted_at ON sys_file(deleted_at);
-- ============================================
-- Dictionary Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_dictionary_type ON dictionary(type);
CREATE INDEX IF NOT EXISTS idx_dictionary_code ON dictionary(code);
CREATE INDEX IF NOT EXISTS idx_dictionary_type_code ON dictionary(type, code);
CREATE INDEX IF NOT EXISTS idx_dictionary_deleted_at ON dictionary(deleted_at);
-- ============================================
-- Dict Type Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_dict_type_dict_type ON sys_dict_type(dict_type);
CREATE INDEX IF NOT EXISTS idx_sys_dict_type_deleted_at ON sys_dict_type(deleted_at);
-- ============================================
-- Dict Data Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_dict_data_dict_type ON sys_dict_data(dict_type);
CREATE INDEX IF NOT EXISTS idx_sys_dict_data_dict_code ON sys_dict_data(dict_code);
CREATE INDEX IF NOT EXISTS idx_sys_dict_data_deleted_at ON sys_dict_data(deleted_at);
-- ============================================
-- User Message Table Indexes
-- ============================================
CREATE INDEX IF NOT EXISTS idx_sys_user_message_user_id ON sys_user_message(user_id);
CREATE INDEX IF NOT EXISTS idx_sys_user_message_is_read ON sys_user_message(is_read);
CREATE INDEX IF NOT EXISTS idx_sys_user_message_deleted_at ON sys_user_message(deleted_at);
-- ============================================
-- Composite Indexes for Common Queries
-- ============================================
CREATE INDEX IF NOT EXISTS idx_users_status_deleted ON sys_users(status, deleted_at);
CREATE INDEX IF NOT EXISTS idx_roles_status_deleted ON sys_roles(status, deleted_at);
-- ============================================
-- Analyze Tables After Index Creation
-- ============================================
ANALYZE sys_users;
ANALYZE sys_roles;
ANALYZE sys_menus;
ANALYZE sys_config;
ANALYZE sys_notice;
ANALYZE sys_file;
ANALYZE dictionary;
ANALYZE sys_dict_type;
ANALYZE sys_dict_data;
ANALYZE sys_user_message;
-- ============================================
-- Query Performance Verification
-- ============================================
-- Use EXPLAIN ANALYZE to verify query performance
-- Example: EXPLAIN ANALYZE SELECT * FROM sys_users WHERE username = 'testuser';