perf(acceptance): 解耦 API 媒体请求并发
生产同构验收将 API 请求体并发独立配置为 AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY,默认每个 API 128;Worker 执行槽和媒体物化仍按 P24/P28/P32 阶梯变化。\n\n这避免同步 Gemini 请求在整个任务生命周期占用仅 24/28/32 个入口槽,并继续由 RSS 与节点内存门禁验证安全上限。\n\n验证:bash -n;shellcheck -x;git diff --check。
This commit is contained in:
@@ -29,6 +29,7 @@ Optional model overrides (otherwise selected from current production candidates)
|
||||
AI_GATEWAY_ACCEPTANCE_VIDEO_MODEL
|
||||
AI_GATEWAY_ACCEPTANCE_GATEWAY_TLS_SERVER_NAME
|
||||
AI_GATEWAY_ACCEPTANCE_IDENTITY_SHARDS
|
||||
AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY
|
||||
EOF
|
||||
}
|
||||
|
||||
@@ -53,6 +54,7 @@ require_commands curl git jq node openssl sed
|
||||
: "${AI_GATEWAY_ACCEPTANCE_GEMINI_MODEL:=}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_VIDEO_MODEL:=}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_API_DATABASE_MAX_CONNS:=64}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY:=128}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_IDENTITY_SHARDS:=32}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_GATEWAY_TLS_SERVER_NAME:=}"
|
||||
: "${AI_GATEWAY_ACCEPTANCE_GATEWAYS:?}"
|
||||
@@ -62,6 +64,11 @@ require_commands curl git jq node openssl sed
|
||||
echo 'AI_GATEWAY_ACCEPTANCE_API_DATABASE_MAX_CONNS must be between 1 and 256' >&2
|
||||
exit 1
|
||||
}
|
||||
[[ $AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY =~ ^[1-9][0-9]*$ &&
|
||||
$AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY -le 1024 ]] || {
|
||||
echo 'AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY must be between 1 and 1024' >&2
|
||||
exit 1
|
||||
}
|
||||
[[ $AI_GATEWAY_ACCEPTANCE_IDENTITY_SHARDS =~ ^[1-9][0-9]*$ &&
|
||||
$AI_GATEWAY_ACCEPTANCE_IDENTITY_SHARDS -le 128 ]] || {
|
||||
echo 'AI_GATEWAY_ACCEPTANCE_IDENTITY_SHARDS must be between 1 and 128' >&2
|
||||
@@ -897,7 +904,7 @@ apply_capacity_profile() {
|
||||
"AI_GATEWAY_DATABASE_MIN_IDLE_CONNS=$min_idle" \
|
||||
"AI_GATEWAY_DATABASE_MAX_CONN_IDLE_SECONDS=$max_idle_seconds" \
|
||||
"AI_GATEWAY_MEDIA_MATERIALIZATION_CONCURRENCY=$media" \
|
||||
"AI_GATEWAY_MEDIA_REQUEST_CONCURRENCY=$media" >/dev/null
|
||||
"AI_GATEWAY_MEDIA_REQUEST_CONCURRENCY=$AI_GATEWAY_ACCEPTANCE_API_MEDIA_REQUEST_CONCURRENCY" >/dev/null
|
||||
remote_kubectl rollout status "deployment/easyai-api-$site" \
|
||||
-n "$namespace" --timeout=300s
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user