perf(methods): 通过移除不必要的 self 参数优化方法签名

在包括 chat、plugin_system、schedule 和 mais4u 在内的多个模块中,消除冗余的实例引用。此次改动将无需访问实例状态的实用函数转换为静态方法,从而提升了内存效率,并使方法依赖关系更加清晰。
This commit is contained in:
雅诺狐
2025-09-20 10:55:06 +08:00
parent 0cc4f5bb27
commit 898208f425
111 changed files with 643 additions and 467 deletions

View File

@@ -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()

View File

@@ -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")

View File

@@ -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")