perf+fix(danding_qqpush): perf优化+安全修复+代码DRY
- image_render: cached draw object, font.getlength() 替代逐字符创建临时Image - image_render: 移除PNG无效的quality参数 - api.py: ImageRenderer单例复用(避免每请求重载字体) - api.py: 异常详情不再泄露到API响应 - sender.py: 提取_send_msg()消除重复代码
This commit is contained in:
@@ -8,6 +8,9 @@ from nonebot import get_driver, logger
|
||||
from .config import Config
|
||||
from .text_parser import TextParser
|
||||
from .image_render import ImageRenderer
|
||||
|
||||
# Module-level singleton: load font once, reuse across requests
|
||||
_renderer = _renderer # reuse module-level singleton
|
||||
from .sender import sender
|
||||
|
||||
|
||||
@@ -134,10 +137,10 @@ def create_routes(token: str, config: Config):
|
||||
raise
|
||||
|
||||
except Exception as e:
|
||||
logger.exception(f"推送接口异常: {str(e)}")
|
||||
logger.exception(f"推送接口异常: {e}")
|
||||
raise HTTPException(
|
||||
status_code=500,
|
||||
detail=f"服务器内部错误: {str(e)}"
|
||||
detail="服务器内部错误"
|
||||
)
|
||||
|
||||
return router
|
||||
|
||||
Reference in New Issue
Block a user