Skip to content

Commit 7e270d3

Browse files
committed
perf: 优化代码
1 parent 19875ee commit 7e270d3

4 files changed

Lines changed: 57 additions & 41 deletions

File tree

ruoyi-fastapi-backend/module_admin/service/log_service.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,10 @@ async def export_login_log_list_services(login_log_list: list) -> bytes:
274274

275275

276276
class LogQueueService:
277+
"""
278+
日志队列服务
279+
"""
280+
277281
@classmethod
278282
def _build_event_id(cls, request_id: str, log_type: str, source: str) -> str:
279283
"""
@@ -346,6 +350,10 @@ async def enqueue_operation_log(cls, request: Request, operation_log: OperLogMod
346350

347351

348352
class LogAggregatorService:
353+
"""
354+
日志聚合消费服务
355+
"""
356+
349357
@classmethod
350358
async def _ensure_group(cls, redis: aioredis.Redis) -> None:
351359
"""
@@ -394,6 +402,13 @@ async def _release_dedup(cls, redis: aioredis.Redis, event_id: str) -> None:
394402

395403
@classmethod
396404
async def _claim_pending(cls, redis: aioredis.Redis, consumer_name: str) -> None:
405+
"""
406+
认领并处理超时未确认的消息
407+
408+
:param redis: Redis连接对象
409+
:param consumer_name: 消费者名称
410+
:return: None
411+
"""
397412
if LogConfig.log_stream_claim_idle_ms <= 0:
398413
return
399414
start_id = '0-0'

ruoyi-fastapi-backend/utils/ai_util.py

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -60,47 +60,47 @@
6060
_storage_class_cache: dict[str, 'type[AsyncBaseDb]'] = {}
6161

6262

63-
def _resolve_provider_class(provider: str) -> 'type[Model] | None':
64-
"""
65-
按需加载并缓存提供商模型类
66-
67-
:param provider: 提供商名称
68-
:return: 模型类,未找到返回None
63+
class AiUtil:
6964
"""
70-
if provider in _provider_class_cache:
71-
return _provider_class_cache[provider]
72-
entry = _PROVIDER_REGISTRY.get(provider)
73-
if entry is None:
74-
return None
75-
module_path, class_name = entry
76-
cls = getattr(import_module(module_path), class_name)
77-
_provider_class_cache[provider] = cls
78-
return cls
79-
80-
81-
def _resolve_storage_class(db_type: str) -> 'type[AsyncBaseDb]':
65+
AI工具类
8266
"""
83-
按需加载并缓存存储引擎类
8467

85-
:param db_type: 数据库类型
86-
:return: 存储引擎类
87-
"""
88-
if db_type in _storage_class_cache:
89-
return _storage_class_cache[db_type]
90-
entry = _STORAGE_ENGINE_REGISTRY.get(db_type)
91-
if entry is None:
92-
# 默认使用MySQL
93-
entry = _STORAGE_ENGINE_REGISTRY['mysql']
94-
module_path, class_name = entry
95-
cls = getattr(import_module(module_path), class_name)
96-
_storage_class_cache[db_type] = cls
97-
return cls
68+
@classmethod
69+
def _resolve_provider_class(cls, provider: str) -> 'type[Model] | None':
70+
"""
71+
按需加载并缓存提供商模型类
72+
73+
:param provider: 提供商名称
74+
:return: 模型类,未找到返回None
75+
"""
76+
if provider in _provider_class_cache:
77+
return _provider_class_cache[provider]
78+
entry = _PROVIDER_REGISTRY.get(provider)
79+
if entry is None:
80+
return None
81+
module_path, class_name = entry
82+
provider_cls = getattr(import_module(module_path), class_name)
83+
_provider_class_cache[provider] = provider_cls
84+
return provider_cls
9885

86+
@classmethod
87+
def _resolve_storage_class(cls, db_type: str) -> 'type[AsyncBaseDb]':
88+
"""
89+
按需加载并缓存存储引擎类
9990
100-
class AiUtil:
101-
"""
102-
AI工具类
103-
"""
91+
:param db_type: 数据库类型
92+
:return: 存储引擎类
93+
"""
94+
if db_type in _storage_class_cache:
95+
return _storage_class_cache[db_type]
96+
entry = _STORAGE_ENGINE_REGISTRY.get(db_type)
97+
if entry is None:
98+
# 默认使用MySQL
99+
entry = _STORAGE_ENGINE_REGISTRY['mysql']
100+
module_path, class_name = entry
101+
storage_cls = getattr(import_module(module_path), class_name)
102+
_storage_class_cache[db_type] = storage_cls
103+
return storage_cls
104104

105105
@classmethod
106106
def get_storage_engine(cls) -> 'AsyncBaseDb':
@@ -109,7 +109,7 @@ def get_storage_engine(cls) -> 'AsyncBaseDb':
109109
110110
:return: 存储引擎实例
111111
"""
112-
storage_engine_class = _resolve_storage_class(DataBaseConfig.db_type)
112+
storage_engine_class = cls._resolve_storage_class(DataBaseConfig.db_type)
113113

114114
return storage_engine_class(
115115
db_engine=async_engine,
@@ -164,9 +164,9 @@ def get_model_from_factory(
164164
params['host'] = base_url
165165
if provider == 'DashScope' and not base_url:
166166
params['base_url'] = 'https://dashscope.aliyuncs.com/compatible-mode/v1'
167-
model_class = _resolve_provider_class(provider)
167+
model_class = cls._resolve_provider_class(provider)
168168
if model_class is None:
169169
# 未知提供商,回退到OpenAI
170-
model_class = _resolve_provider_class('OpenAI')
170+
model_class = cls._resolve_provider_class('OpenAI')
171171

172172
return model_class(**params)

ruoyi-fastapi-backend/utils/common_util.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,11 @@
1515

1616
from config.database import Base
1717
from config.env import CachePathConfig
18+
from utils.log_util import logger
1819

1920

2021
def worship() -> None:
21-
print(r"""
22+
logger.info(r"""
2223
////////////////////////////////////////////////////////////////////
2324
// _ooOoo_ //
2425
// o8888888o //

ruoyi-fastapi-frontend/src/settings.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,5 @@ module.exports = {
5252
/**
5353
* 底部版权文本内容
5454
*/
55-
footerContent: 'Copyright © 2024-2025 insistence.tech All Rights Reserved.'
55+
footerContent: 'Copyright © 2024-2026 insistence.tech All Rights Reserved.'
5656
}

0 commit comments

Comments
 (0)