fix: bound blue-green worker memory

This commit is contained in:
2026-09-20 22:00:10 +08:00
parent ea37015c80
commit 2bf3a1c8eb
2 changed files with 8 additions and 0 deletions
@@ -166,10 +166,16 @@ needs_worker() {
start_worker_candidate() {
docker rm -f "$worker_candidate" >/dev/null 2>&1 || true
echo "启动单例 Worker: $worker_candidate"
if [ "$SERVICE" = file ]; then
worker_java_options="-Xms512m -Xmx2g -XX:+ExitOnOutOfMemoryError -Dfile.encoding=UTF-8"
else
worker_java_options="-Xms256m -Xmx1g -XX:+ExitOnOutOfMemoryError -Dfile.encoding=UTF-8"
fi
if ! compose run -d --no-deps --name "$worker_candidate" \
-e "NACOS_REGISTER_ENABLED=false" \
-e "BAIYUE_RUNTIME_SCHEDULING_ENABLED=true" \
-e "BAIYUE_DEPLOY_SLOT=${target_slot}-worker" \
-e "JAVA_TOOL_OPTIONS=$worker_java_options" \
-e "BAIYUE_RELEASE_ID=$IMAGE_TAG" "$SERVICE" >/dev/null; then
return 1
fi
@@ -20,6 +20,8 @@ test('all backend business services have blue-green runtime contracts', async ()
assert.match(script, /BAIYUE_RUNTIME_SCHEDULING_ENABLED=false/)
assert.match(script, /NACOS_REGISTER_ENABLED=false/)
assert.match(script, /start_worker_candidate/)
assert.match(script, /worker_java_options="-Xms512m -Xmx2g/)
assert.match(script, /worker_java_options="-Xms256m -Xmx1g/)
assert.match(script, /connect_routing_aliases "\$candidate" "\$ROUTING_ALIAS" "\$NACOS_SERVICE"/)
assert.match(script, /file,file-service:file/)
assert.match(script, /docker stop --time "\$STOP_TIMEOUT" "\$active_container"/)