Optimize serialization and jwt performance (#382)

* Optimize serialization and algorithm performance

* Fix get tree data to async

* Removed CPU-intensive multi-threaded execution

* Update pdm pre commit to 2.18.0

* Add jwt user info cache

* Update ci

* Fix ci

* Fix redis delete prefix

* Adapt to JWT user instance

* Update jwt middleware token parse
This commit is contained in:
Wu Clan
2024-08-17 09:26:16 +08:00
committed by GitHub
parent 22586dd947
commit c743182211
40 changed files with 319 additions and 263 deletions
+5 -5
View File
@@ -16,25 +16,25 @@ router = APIRouter()
@router.get('', summary='获取所有可执行任务模块', dependencies=[DependsJwtAuth])
async def get_all_tasks() -> ResponseModel:
tasks = task_service.get_list()
return await response_base.success(data=tasks)
return response_base.success(data=tasks)
@router.get('/current', summary='获取当前正在执行的任务', dependencies=[DependsJwtAuth])
async def get_current_task() -> ResponseModel:
task = task_service.get()
return await response_base.success(data=task)
return response_base.success(data=task)
@router.get('/{uid}/status', summary='获取任务状态', dependencies=[DependsJwtAuth])
async def get_task_status(uid: Annotated[str, Path(description='任务ID')]) -> ResponseModel:
status = task_service.get_status(uid)
return await response_base.success(data=status)
return response_base.success(data=status)
@router.get('/{uid}', summary='获取任务结果', dependencies=[DependsJwtAuth])
async def get_task_result(uid: Annotated[str, Path(description='任务ID')]) -> ResponseModel:
task = task_service.get_result(uid)
return await response_base.success(data=task)
return response_base.success(data=task)
@router.post(
@@ -51,4 +51,4 @@ async def run_task(
kwargs: Annotated[dict | None, Body(description='任务函数关键字参数')] = None,
) -> ResponseModel:
task = task_service.run(name=name, args=args, kwargs=kwargs)
return await response_base.success(data=task)
return response_base.success(data=task)