perf(methods): 通过移除不必要的 self 参数优化方法签名
在包括 chat、plugin_system、schedule 和 mais4u 在内的多个模块中,消除冗余的实例引用。此次改动将无需访问实例状态的实用函数转换为静态方法,从而提升了内存效率,并使方法依赖关系更加清晰。
This commit is contained in:
@@ -25,7 +25,8 @@ class DatabaseProxy:
|
||||
self._engine = None
|
||||
self._session = None
|
||||
|
||||
def initialize(self, *args, **kwargs):
|
||||
@staticmethod
|
||||
def initialize(*args, **kwargs):
|
||||
"""初始化数据库连接"""
|
||||
return initialize_database_compat()
|
||||
|
||||
|
||||
@@ -4,16 +4,14 @@
|
||||
支持自动重连、连接池管理和更好的错误处理
|
||||
"""
|
||||
|
||||
import traceback
|
||||
import time
|
||||
import asyncio
|
||||
from typing import Dict, List, Any, Union, Type, Optional
|
||||
from sqlalchemy.exc import SQLAlchemyError
|
||||
import traceback
|
||||
from typing import Dict, List, Any, Union, Optional
|
||||
|
||||
from sqlalchemy import desc, asc, func, and_, select
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from src.common.logger import get_logger
|
||||
from sqlalchemy.exc import SQLAlchemyError
|
||||
|
||||
from src.common.database.sqlalchemy_models import (
|
||||
Base,
|
||||
get_db_session,
|
||||
Messages,
|
||||
ActionRecords,
|
||||
@@ -33,6 +31,7 @@ from src.common.database.sqlalchemy_models import (
|
||||
MaiZoneScheduleStatus,
|
||||
CacheEntries,
|
||||
)
|
||||
from src.common.logger import get_logger
|
||||
|
||||
logger = get_logger("sqlalchemy_database_api")
|
||||
|
||||
|
||||
@@ -3,17 +3,18 @@
|
||||
替换Peewee ORM,使用SQLAlchemy提供更好的连接池管理和错误恢复能力
|
||||
"""
|
||||
|
||||
from sqlalchemy import Column, String, Float, Integer, Boolean, Text, Index, DateTime
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession, async_sessionmaker
|
||||
from sqlalchemy.orm import Mapped, mapped_column
|
||||
import os
|
||||
import datetime
|
||||
import os
|
||||
import time
|
||||
from typing import Iterator, Optional, Any, Dict, AsyncGenerator
|
||||
from src.common.logger import get_logger
|
||||
from contextlib import asynccontextmanager
|
||||
import asyncio
|
||||
from typing import Optional, Any, Dict, AsyncGenerator
|
||||
|
||||
from sqlalchemy import Column, String, Float, Integer, Boolean, Text, Index, DateTime
|
||||
from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession, async_sessionmaker
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
from sqlalchemy.orm import Mapped, mapped_column
|
||||
|
||||
from src.common.logger import get_logger
|
||||
|
||||
logger = get_logger("sqlalchemy_models")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user