dify 并发配置优化
以 docker compose 部署为例,以下是一些常用的参数优化(修改后注意观察服务器负载):
数据库连接数
当把工作流发布为工具,进行并发调用时,容易导致数据库连接失败。
# 配置文件路径:docker/.env
# 每个 dify服务进程的数据库链接池数量
SQLALCHEMY_POOL_SIZE=200
# 数据库链接池回收时间,可以适当缩短这个参数
SQLALCHEMY_POOL_RECYCLE=1800
# 配置数据库的最大连接数
# Reference: https://www.postgresql.org/docs/current/runtime-config-connection.html#GUC-MAX-CONNECTIONS
POSTGRES_MAX_CONNECTIONS=1500
Sandbox
当 dify中执行代码服务并发过高的时候会出现:Code execution service is unavailable
的报错,查看容器的错误日志会出现 `[N] 2025/04/29 - 06:18:11 | 503 | 27.848µs | 172.19.0.5 | POST "/v1/sandbox/run"
503 错误。
此时可以修改 SandBox 服务的一些参数,将max_workers、max_requests 进行提高:
# 配置文件路径:docker/volumes/sandbox/conf/config.yaml
max_workers: 4
max_requests: 50
其他
如果要暴露dify相关数据库、redis的服务,一定要修改默认密码。
License:
CC BY 4.0