微信扫码
添加专属顾问
我要投稿
Dify 应用性能优化实战:揭秘如何通过AI网关解决高并发瓶颈,保障生产环境稳定运行。 核心内容: 1. Dify 应用性能瓶颈的深度剖析 2. Higress AI 网关的全链路高可用解决方案 3. 具体操作实践与优化效果验证
💡 目录 💡
01 dify 应用性能问题
02 AI 网关提升 Dify 应用可用性
03 实操指南与能力效果
04 总结
Dify 作为一款开源的AI应用开发平台,凭借其灵活的工作流编排和易用的界面,在社区和云上部署中获得了广泛的关注。在 github 上,Dify 平均日增 20 个左右 issue,在开源也具有较高的活跃度。
然而,随着 Dify 用户规模扩大、生产落地增加,Dify 应用在性能方面的问题也逐渐暴露,影响了用户体验和生产环境的稳定性。
针对 Dify 性能问题,本文将介绍如何使用 Higress AI 网关保证 Dify 应用的全链路高可用性,并给出操作实践指南。
01
对于一个对外提供服务的 Dify AI 应用,能够正常运行的核心基础依赖包括:Dify 系统组件、模型服务、MCP 服务、向量库与记忆库等。其中更容易达到性能瓶颈的节点在于 Dify 系统组件和模型服务。
在高并发场景下,Dify 系统组件很容易达到 CPU 性能瓶颈。在内部某生产实践中,在 Dify 所有服务端组件规格为 4C8G 单实例的情况下,对仅 10 节点的 Dify 工作流应用进行压测,约 10qps 便把 CPU 使用率打满,导致 Dify 应用和 Dify 管理端均不可用。
Dify 系统组件的性能问题,究其原因,主要和 Dify 本身的实现架构和逻辑有关,主要的影响因素包括:
从上述分析中看出,如果我们希望提升 Dify 系统组件的性能,需要在源码侧持续优化,中短期来看,难以取得较大的性能提升。
对于自建模型服务的场景,由于模型推理过程本身对 GPU 算力和显存有较高消耗,在 Dify 应用依赖到自建模型的场景,在高并发情况下,也会出现因为模型服务资源打满导致应用请求耗时翻倍、卡住卡死的情况,除了严重影响用户使用体验,也容易由于模型服务不可用导致 Dify 系统本身崩溃。
由于目前国内市场的状况依然是一卡难求,通过扩大 GPU 资源来支持更高的并发来提升吞吐能力,意味着大量的财力消耗,这其中的性价比可能需要谨慎评估。
针对上述问题,在 Dify 系统组件性能中短期不会显著提升,GPU 资源短期内不计划扩容的情况下,面对突发或并发的 Dify 应用请求时,面向 Dify 应用的高可用治理,在生产级场景下便显得尤为重要。
02
AI 网关提升 Dify 应用可用性
Higress AI 网关是外界与企业 AI 应用、企业 AI 应用与大语言模型服务和 MCP 服务的桥梁,旨在解决模型集成复杂、安全合规难、管理效率低等挑战,提供统一治理入口。具备以下核心特性:
AI 网关通过通过简化集成、统一治理、强化安全和加速响应,企业在利用 AI 技术创新过程中将更加高效、安全、稳定。
AI 网关提供了一整套专为 AI 应用与模型设计的高可用性保障能力,确保应用与模型服务的稳定与可靠:
使用 Higress AI 网关提高 Dify 应用的高可用性,需要将 AI 网关和 Dify 系统整合,我们提供的整合方案如下图所示。在原架构下,Dify 内置的 Nginx 作为反向代理代理入流量,Dify 直接调用大模型、RAG 服务、Mcp Server 等;新架构下,AI 网关替换 Dify 内置 Nginx,作为 Dify 应用出入流量的代理。
在入流量代理处,我们推荐将 AI 网关替代 Nginx,而不是将 AI 网关路由到Nginx,理由如下:
03
实操指南与能力效果
AI网关支持创建 Agent API,代理访问 AI 应用,并针对访问 AI 应用的流量提供观测、安全、高可用治理等能力。本文将选取高可用治理能力进行重点介绍。
在 AI 网关为 Dify 的 api 组件创建服务来源。如果您的 Dify 部署在 SAE 或者 ACK 上,可以参考以下方式创建服务。
在服务-服务-创建服务处添加部署 Dify 的 SAE 命名空间下的 dify-api-{namespace} 应用。
在服务-来源-创建来源处创建容器来源后,在服务-服务-创建服务处添加对应容器服务中 dify-system 命名空间下的 ack-dify-api。
接下来,在 AI 网关上通过 Agent API 的方式为 Dify 服务配置路由。步骤如下:
如果您希望一条路由对应一个 Dify 应用,可以在更多匹配规则中,设置请求头和请求参数匹配,如设置 header-key=app-id,需要注意您在通过 AI 网关访问 Dify 应用时,需自主携带对应的匹配内容。
AI 网关支持创建 LLM API 代理访问大模型,支持创建 Mcp Server 实现 Mcp 代理,支持通过使用 RAG 插件实现 Rag 检索代理,并针对不同类型的流量提供丰富的观测、安全、高可用治理等能力。
由于访问大模型是 AI 应用最核心场景,本节将主要重点介绍 AI 网关代理大模型流量的操作方式,以及相应的高可用治理能力。
以 AI 网关作为 Dify 应用流量入口,可以在 AI 网关上通过配置集群限流,进行全局级、应用级等多维度流量控制。本节将以应用级限流为例进行简单介绍和演示。
为了实现全局级和应用级限流,需要额外引入 Redis 实例进行计数,在 Dify 系统的存储组成中,Redis 是必要组件之一,因此可以刚好复用 Dify 系统的 Redis。
在 AI 网关中完成 Redis 应用创建之后,在插件市场中使用基于 Key 集群限流插件,通过配置插件规则,即可实现针对不同 Dify 应用的限流策略。基于集群限流插件的详细使用方式见基于 Key 集群限流。
以下图为例,假设对某Dify应用设置1分钟只允许通过一次的请求。
对该应用发起调用,当一分钟内发起第 2 次请求的时候,会因为触发 AI 网关限流规则,导致调用失败。但是调用其他应用时,由于无流控规则,依然能够无限制请求。
使用 AI 网关对模型调用代理,对于 Dify 应用调用模型服务的场景,可以实现不同时间尺度的请求数限流,其使用方式和效果同上文所述基本一致,差异在于限流位置,因此不再赘述。
除了请求数限流,对于 Dify 应用调用模型服务的场景,还可以实现基于 token 消耗的流量控制,配置示意如下图所示,更详细的使用指引请详见限流。
在该例中,配置全局 500 token/min,配置生效后,当模型服务整体在 1 分钟时间范围内超出 500 token 消耗后,访问模型的请求将会被 AI 网关直接拒绝。
为模型访问配置 Fallback 能力,可以保证当默认访问的模型服务响应异常时,自动 Fallback 到备用模型服务,从而保证模型调用的高可用性,进而提升 Dify 应用的整体可用性。详细的配置和使用方式详见 AI Fallback。
为了模拟 Fallback 的效果,在本例中,为 Didy 应用所访问的 Model API 配置一个无法访问的主模型服务,再配置一个可以正常访问的百炼模型服务。
运行 Dify 应用,能够看到 LLM 节点依然能正常返回结果,工作流运行正常。
通过网关日志我们能够看到,AI 网关在访问主模型服务时发生了 503 异常,于是自动 Fallback 到了百炼 qwen-turbo 模型进行了调用,并返回了正常调用结果,从而保证了 Dify 应用整体运行正常。
对于 Dify 访问自建模型(如在阿里云 PAI 自建)的场景,AI 网关提供了面向 LLM 服务的负载均衡策略,包括全局最小请求数负载均衡、前缀匹配负载均衡以及 GPU 感知负载均衡,能够在不增加硬件成本的前提下,提升系统的吞吐能力、降低响应延迟,并实现更公平、高效的任务调度。具体介绍和使用方式参考AI负载均衡、不增加 GPU,首 Token 延迟下降50%|LLM 服务负载均衡的新实践。
以前缀匹配负载均衡为例,压测工具使用 NVIDIA GenAI-Perf,设置每轮输入平均为 200 token,输出平均为 800 token,并发为 20,每个会话包含 5 轮对话,共计 60 个会话,性能指标前后对比如下。能够明显地感受到,通过合理的负载均衡策略,首Token延迟能够下降50%。
指标 | 无负载均衡 | 前缀匹配负载均衡 |
TTFT(首Token延迟) | 240 ms | 120 ms |
平均 RT | 14934.85 ms | 14402.36 ms |
P99 RT | 35345.65 ms | 30215.01 ms |
Token 吞吐 | 367.48 (token/s) | 418.96 (token/s) |
Prefix Cache 命中率 | 40 % + | 80 % + |
以前缀匹配负载均衡为例,针对 Dify 应用访问的 Model API,可通过插件便捷地配置负载均衡策略,配置示意如下图所示。
插件生效后,Dify 应用通过 AI 网关对 LLM 服务发起调用,即可实现对自建 LLM 服务实例的负载均衡。
04
总结
通过 Higress AI 网关的赋能,Dify 不再是一个“单打独斗”的开源平台,而是拥有了一个强大的企业级治理与增强引擎。无论是应用层的高可用防护,还是模型层的稳定与性能优化,AI 网关都提供了开箱即用的解决方案,将开发者从复杂的运维中解放出来,更专注于业务创新。
除了高可用能力外,Higress AI 还提供了安全、RAG 代理等其他丰富能力,提升 Dify 应用安全性、便捷对接外部 RAG 引擎。如果你正在使用 Dify,并被高可用、安全、RAG 等问题所困扰,那么使用 Higress AI 网关代理 Dify 应用出入流量,绝对是你不可错过的最佳实践。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-08-19
如何将普通的HTTP API接口快速变成MCP Server
2025-08-19
7年了,OpenAI官方给出五代GPT对比,网友却怀念起「狂野」初代
2025-08-19
阿里千问最新模型,已成为 AI 修图中的王者
2025-08-19
为什么 LLMs 无法真正构建软件
2025-08-19
DeepSeekMine个人知识库,支持一键安装大模型了,最新Windows、Mac安装包发布!
2025-08-19
AI Agent将开启一个由“需求”定义软件的全新时代
2025-08-19
文库 GenFlow2.0,这个特性让我大吃一惊
2025-08-19
AI模型的“深思熟虑”与“快问快答”:不止于更长,更在于智慧
2025-05-29
2025-05-23
2025-06-01
2025-06-21
2025-06-07
2025-06-12
2025-06-19
2025-06-13
2025-05-28
2025-07-29
2025-08-18
2025-08-18
2025-08-18
2025-08-15
2025-08-14
2025-08-14
2025-08-13
2025-08-13