Dify 生产环境性能调优:API 并发与 Celery 后台任务参数实践
一、问题背景 最近在整一个大模型的项目,生产环境用的是一台标准的 8核 16G 云服务器,上面自己独立部署了 Dify 平台。 我们的业务主要已AI对话+工作流为主,没有大文件处理和知识库管理。 不玩重活:完全没有大文件解析、数据集批量导入,或者知识库切片这种疯狂吃内存的“重体力活”。 全是业务:纯粹的 Workflow 工作流和 Agent 智能体调度,里面塞满了各种大模型(LLM)节点,而且基本全是 Stream 流式输出。 刚上线并发一上来,前端和 API 就频繁蹦出 504 Gateway Timeout。去服务器上一看,16G 内存还剩一大截,但 CPU 各个核心忙得不均匀,Web 请求排大队。 进一步排查发现,Dify 的默认配置(尤其是官方 docker-compose.yml 及 .env ..
更多一次MySQL排序内存溢出的排查与解决实录
我昨天刚踩完这个坑,顺手把排查过程整理了一下,希望能帮你省点时间。 事情是这样的 昨天下午,我正美滋滋地写着代码,突然监控告警响了。点开一看,一个跑了半年的MySQL服务挂了,日志里躺着一行刺眼的红字: Out of sort memory, consider increasing server sort buffer size 说实话,看到这个报错我第一反应是——哪个憨憨写了没索引的大排序?后来一查,不是代码的问题,是数据量涨上来了,原来默认的256KB真扛不住了。 所以今天我就把整个排查和解决过程记录下来,希望对遇到同样问题的你有点帮助。 先说说这个报错是啥意思 MySQL在执行ORDER BY或者GROUP BY的时候,如果数据量太大,内存里放不下,就会把数据临时写到磁盘上。但是呢,MySQL有个参..
更多Linux 云存储挂载记录:从 FTP 到 Docker 容器共享
一份手记,记录我在使用 rclone、FTP、SMB 和 Docker 时踩过的坑与解决方案。 最近给公司搭建共享文件服务,遇到一大堆坑。记录一下,查了一堆办法,没有完美解决问题。mac上无法读写ftp,所以想着把ftp挂载到目录,然后把目录用samba共享出去。几个服务都在docker环境中运行。 1. Linux 挂载 FTP 的传统方式 1.1 为什么 mount 不能直接挂载 FTP? mount 命令是为内核支持的文件系统(如 ext4、NFS、CIFS)设计的,而 FTP 是一个应用层协议,并非文件系统。因此,执行 mount -t ftp ... 会直接报错,也无法在 /etc/fstab 中直接配置。 1.2 curlftpfs:基于 FUSE 的挂载工具 curlftpfs 利用 FUSE(用..
更多