refactor(backend): optimize database safety, validator performance, and scheduler concurrency

- Fix SQL injection risks in proxy_repo and task_repo
- Atomic acquire_pending with UPDATE ... RETURNING
- Reuse aiohttp ClientSession in ValidatorService
- Replace polling with asyncio.Event in SchedulerService
- Optimize ValidationQueue.drain with asyncio.Condition
- Concurrent plugin crawling with asyncio.gather
- Unify ProxyRaw model import path
- Fix test baseline and remove tracked __pycache__ files
This commit is contained in:
祀梦
2026-04-04 14:43:31 +08:00
parent abb8b32ed3
commit 635c524a7e
27 changed files with 103 additions and 89 deletions

View File

@@ -6,8 +6,9 @@ from app.core.log import logger
class SpeedXPlugin(BaseHTTPPlugin):
default_config = {"max_pages": 5}
name = "speedx"
display_name = "SpeedX代理"
display_name = "SpeedX代理"
description = "从 SpeedX GitHub 仓库获取 SOCKS 代理列表"
def __init__(self):
@@ -47,5 +48,5 @@ class SpeedXPlugin(BaseHTTPPlugin):
results.append(ProxyRaw(ip, int(port), protocol))
if results:
logger.info(f"{self.display_name} 解析完成,获 {len(results)} 个潜在代理")
logger.info(f"{self.display_name} 解析完成,获 {len(results)} 个潜在代理")
return results