From 5518039792154b99d10ac0a33baa3ea3a60d6329 Mon Sep 17 00:00:00 2001 From: wangbo Date: Wed, 24 Jun 2026 16:38:41 +0800 Subject: [PATCH] chore(deploy): add server native memory guards --- .env.sample | 9 +++++++++ README.md | 6 ++++++ docker-compose.yml | 3 +++ 3 files changed, 18 insertions(+) diff --git a/.env.sample b/.env.sample index 9502abb..577d0b4 100644 --- a/.env.sample +++ b/.env.sample @@ -23,6 +23,15 @@ WEB_PORT=3010 SERVER_HTTP_PORT=3001 # easyai-server 后端 HTTP 端口 +NODE_MAX_OLD_SPACE_SIZE=1536 +# easyai-server V8 heap 上限,单位 MB +MALLOC_ARENA_MAX=2 +# 限制 glibc native heap arena,降低 sharp/libvips 场景下 RSS 膨胀 +SHARP_CACHE_ENABLED=false +# 默认关闭 sharp/libvips 全局 cache;需要开启时再配置 SHARP_CACHE_* 参数 +SHARP_CONCURRENCY=1 +# sharp/libvips 并发,8G 单机建议保持 1 + # ws-gateway WebSocket 端口(统一作为对外访问映射端口使用) CONFIG_WS_PORT=3002 # ws-gateway 容器内部 TCP 微服务监听地址(供 easyai-server 推送事件) diff --git a/README.md b/README.md index 53cd491..f5005e1 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,12 @@ Windows 下使用 `update.ps1`,功能与 Linux 版一致: ## 重要更新记录: +### 2026.06.24 + +1. **主服务 sharp/native 内存护栏**:`easyai-server` 默认关闭 sharp/libvips cache,并将 sharp 并发限制为 1;同时设置 `MALLOC_ARENA_MAX=2`,降低图片处理和大 Buffer 场景下 native RSS 持续膨胀风险。 +2. **生图 base64 输出收敛**:模型返回的 base64 图片会先上传到 OSS,返回对象和 raw/debug 响应中不再长期保留大 base64 字符串。 +3. **重启要求**:该内存护栏必须在新进程启动时生效,更新后需执行 `docker compose up -d easyai-server` 或重建并重启主服务容器。 + ### 2026.06.22 1. **Redis 资源护栏**:Redis 增加 `./data/redis:/data` 持久化挂载、`maxmemory 2gb`、`appendfsync everysec`,并禁用 RDB 快照,避免队列历史膨胀后占满内存和容器写层。 diff --git a/docker-compose.yml b/docker-compose.yml index bd5d64e..34419e0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -74,6 +74,9 @@ services: - CONFIG_DB_MONGO_USERNAME=${MONGO_INITDB_ROOT_USERNAME} - CONFIG_DB_MONGO_PASSWORD=${MONGO_INITDB_ROOT_PASSWORD} - NODE_MAX_OLD_SPACE_SIZE=${NODE_MAX_OLD_SPACE_SIZE:-1536} + - MALLOC_ARENA_MAX=${MALLOC_ARENA_MAX:-2} + - SHARP_CACHE_ENABLED=${SHARP_CACHE_ENABLED:-false} + - SHARP_CONCURRENCY=${SHARP_CONCURRENCY:-1} # Redis配置,队列缓存,不会配置的话保持默认即可 - CONFIG_COMFYUI_QUENE_REDIS_HOST=172.21.0.4 - CONFIG_COMFYUI_QUENE_REDIS_PORT=6379