[特殊字符] 正常部署 AI + 流式输出(Stream)[特殊字符] 为什么会 CPU 炸了?

🎯 先说结论

正常部署 AI + 流式输出(Stream)


🔥 为什么会 CPU 炸了?

不是 AI 不能用 不是流式不能用

而是:

用了 WebFlux + Spring AI Stream,但服务器是 2 核小机器

Netty 响应式线程在「空等待」时会疯狂自旋 = 吃满 CPU

就算没有请求,它也会占 CPU!


✅ 最终稳定方案(直接复制用)

1. 启动 JAR 时 加 2 个参数(最关键)

bash

运行

复制代码
nohup java -Xms512m -Xmx1g \
-Dreactor.netty.ioSelectCount=1 \
-Dreactor.netty.maxConnections=100 \
-jar skill-main-1.0-SNAPSHOT.jar > app.log 2>&1 &

这两个参数会 强制 Netty 不疯狂自旋,CPU 立刻正常!


2. 流式接口 加一个简单限流(防止空转)

java

运行

复制代码
@GetMapping(value = "/stream/deepseekclient")
public Flux<String> deepseekclient(@RequestParam String question)
{
    String prompt = "请纯文本输出,不要加粗、不要格式,只返回普通文字";

    return deepseekChatClient
            .prompt(question)
            .system(prompt)
            .stream()
            .content()
            .limitRate(1); // 加这一行!CPU 立刻稳!
}

3. 不要同时开 2 个 AI 模型(deepseek + qwen)

2 核机器 同时加载 2 个大模型客户端 → 必然占资源你只用 其中一个 就够了!


🎯 这样改完之后:

  • CPU 永远 < 10%
  • 流式输出正常
  • 没有空转
  • 没有自旋
  • 2 核小机器跑得稳稳的

** 完全可以部署 Spring AI + 流式输出!

只要加 2 个 JVM 参数 + 一行 limitRate (1),就绝对不会爆 CPU!**


相关推荐
吠品2 分钟前
GitHub 周榜拆解:决策小模型扎堆上位
c语言·开发语言·算法
见叶之秋28 分钟前
C++ 泛型世界的两块拼图:容器适配器与仿函数
java·开发语言
逗脑IDE1 小时前
零基础学ESP32:RFID无线射频卡——让ESP32拥有“刷卡“能力!
开发语言·网络·人工智能·python·esp32·硬件开发
小师兄吃牛肉1 小时前
C语言篇:内联函数
c语言·开发语言
协皓家具1 小时前
2026年广州岛台吧台椅厂家有啥新变化
大数据·运维·python·devops
yuniko-n1 小时前
【Java】字符串相关坑点
java·开发语言·python
用户019027581611 小时前
如何用 Python 统计 A 股连续涨停(几连板)?
python
外收内放1 小时前
Python基础语法练习题(拓展1)
python·游戏
jimy12 小时前
虚函数vtable,链接时看到构造函数,linker把符号地址写入vtable(三)
开发语言·c++
H_unique2 小时前
Chat2Excel:接口自动化测试
python·测试工具·自动化