Merge branch 'main' into online
This commit is contained in:
@@ -112,6 +112,8 @@ class Settings(BaseSettings):
|
|||||||
# ChatAPI async generation pipeline settings
|
# ChatAPI async generation pipeline settings
|
||||||
CELERY_BROKER_URL: str = ""
|
CELERY_BROKER_URL: str = ""
|
||||||
CELERY_RESULT_BACKEND: str = ""
|
CELERY_RESULT_BACKEND: str = ""
|
||||||
|
# Celery result backend 仅保留近期排障状态;业务恢复以数据库状态和业务日志为准。
|
||||||
|
CELERY_RESULT_EXPIRES_SECONDS: int = 7200
|
||||||
# Celery async 兼容配置。
|
# Celery async 兼容配置。
|
||||||
# single_loop:每个 Celery 子进程一个专用 event loop,推荐线上/本地统一使用。
|
# single_loop:每个 Celery 子进程一个专用 event loop,推荐线上/本地统一使用。
|
||||||
# direct:旧版线程本地 loop 降级模式,建议配合 CELERY_DB_USE_NULLPOOL=true。
|
# direct:旧版线程本地 loop 降级模式,建议配合 CELERY_DB_USE_NULLPOOL=true。
|
||||||
|
|||||||
@@ -77,6 +77,8 @@ if broker_url:
|
|||||||
task_serializer="json",
|
task_serializer="json",
|
||||||
accept_content=["json"],
|
accept_content=["json"],
|
||||||
result_serializer="json",
|
result_serializer="json",
|
||||||
|
result_expires=max(60, int(settings.CELERY_RESULT_EXPIRES_SECONDS or 7200)),
|
||||||
|
task_store_errors_even_if_ignored=True,
|
||||||
timezone="Asia/Shanghai",
|
timezone="Asia/Shanghai",
|
||||||
enable_utc=True,
|
enable_utc=True,
|
||||||
task_soft_time_limit=600,
|
task_soft_time_limit=600,
|
||||||
|
|||||||
+3
-3
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -28,7 +28,7 @@
|
|||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
</script>
|
</script>
|
||||||
<script type="module" crossorigin src="/assets/index-mGpmDG8h.js"></script>
|
<script type="module" crossorigin src="/assets/index-OcL9GWjl.js"></script>
|
||||||
<link rel="stylesheet" crossorigin href="/assets/index-JhRVnnL-.css">
|
<link rel="stylesheet" crossorigin href="/assets/index-JhRVnnL-.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
@@ -472,8 +472,20 @@ function RemoveInfo() {
|
|||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<div style={{ width: '100%', height: '100%', display: 'flex', alignItems: 'center', justifyContent: 'center', color: '#94a3b8', fontSize: 12 }}>
|
<div style={{ width: '100%', height: '100%', display: 'flex', alignItems: 'center', justifyContent: 'center', gap: 6, fontSize: 12 }}>
|
||||||
{record.splitStatus === 'failed' ? '切割失败' : record.splitStatus === 'pending' ? '等待切割' : '切割中'}
|
{record.splitStatus === 'failed' ? (
|
||||||
|
<span style={{ color: '#94a3b8' }}>切割失败</span>
|
||||||
|
) : record.splitStatus === 'pending' ? (
|
||||||
|
<>
|
||||||
|
<Spin size="small" style={{ color: '#f59e0b' }} />
|
||||||
|
<span style={{ color: '#f59e0b' }}>切割中</span>
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
<Spin size="small" style={{ color: '#f59e0b' }} />
|
||||||
|
<span style={{ color: '#f59e0b' }}>切割中</span>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@@ -489,7 +501,8 @@ function RemoveInfo() {
|
|||||||
if (splitStatus === 'pending') {
|
if (splitStatus === 'pending') {
|
||||||
return (
|
return (
|
||||||
<div style={{ display: 'flex', alignItems: 'center', gap: 6 }}>
|
<div style={{ display: 'flex', alignItems: 'center', gap: 6 }}>
|
||||||
<span style={{ fontSize: 14, color: '#64748b' }}>等待切割</span>
|
<Spin size="small" style={{ color: '#f59e0b' }} />
|
||||||
|
<span style={{ fontSize: 14, color: '#f59e0b' }}>切割中</span>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user