炸裂:SpringAI新版发布,终于支持断线重连了!

盼星星盼月亮,Spring AI 新版 1.1.0-M1(1.1.0 里程式版本)终于支持 Steamable HTTP 了,也就意味着 Spring AI 的 MCP 服务终于支持自动断线重连了。

1.SteamableHTTP

定义 :Streamable HTTP 是基于标准 HTTP 协议的流式数据传输模式,允许客户端或服务器在数据完全生成前,分块(Chunk)传输数据,实现"边生成、边传输、边使用"的实时通信效果。它不是新协议,而是对 HTTP 的优化用法,结合了分块传输、连接复用、断线重连等特性。

2.SteamableHTTP和SSE

SSE 是 Spring AI 此次新版发布之前主要使用的通讯协议,是一种基于 HTTP 协议的 服务器向客户端单向推送数据 的技术,允许服务器在建立连接后 随时向客户端发送实时更新,无需客户端反复发起请求。它是 HTML5 标准的一部分,设计简单,适合需要实时通知但无需双向通信的场景。

SSE 和 Steamable HTTP 的主要区别如下:

维度 SSE Streamable HTTP
灵活性 ❌ 仅单向通信,格式受限 ✅ 支持双向、多格式、断点续传
性能 ❌ 高并发时资源占用高 ✅ 高并发下更高效

3.使用SteamableHTTP

Steamable HTTP 在新版中的使用如下。

先添加新版依赖:

xml 复制代码
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-starter-mcp-server-webflux</artifactId>
    <version>1.1.0-M1</version>
</dependency>

配置使用 Steamable 协议:

yaml 复制代码
spring:
  ai:
    mcp:
      server:
        protocol: STREAMABLE # 配置使用 Steamable 协议

客户端也添加对应的新版本依赖:

xml 复制代码
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-starter-mcp-client-webflux</artifactId>
    <version>1.1.0-M1</version>
</dependency>

之后配置 MCP 服务器地址就可以直接调用了:

yaml 复制代码
spring:
    mcp:
      client:
        streamable-http:
          connections:
            weather-server:
              url: http://localhost:10086/api   # 指向刚才启动的 MCP Server

其他实现代码不变。

4.视频实现演示

www.bilibili.com/video/BV1xY...

小结

Spring AI 之前版本最被人诟病的就是不支持 Streamable HTTP,所以在实现自定义 MCP 服务器端时很麻烦,需要自己手动实现断线自动重连功能。但现在新版本支持之后我们就可以非常方便的实现 MCP 服务了,大家可以动手试一下。

本文已收录到我的技术小站 www.javacn.site,其中包含的内容有:Spring AI、LangChain4j、Dify、Coze、Spring AI Alibaba、智能体(AI Agent)、MCP、Function Call、RAG、向量数据库、Prompt、多模态、向量数据库、嵌入模型、AI 常见面试问题等内容。

相关推荐
wuminyu11 小时前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
带刺的坐椅11 小时前
Solon AOT & Native:三段式编译,从 Java 到原生可执行文件
java·aot·solon·native
AI_paid_community11 小时前
如何使用 Claude 在 AI 时代快速入局新的行业?(经验贴)
前端·javascript·后端
程序员韩星11 小时前
从模型直连到统一 AI 网关:多模型 API、Codex 与 Claude Code 接入实践
前端·程序员·ai编程
AI多Agent协作实战派11 小时前
AI多Agent协作系统实战(三十六):代码里明明写了,编译完怎么没了?
后端
柠檬味拥抱11 小时前
代码看腻了,我让 Seed Evolving 把整个仓库搓成了一座能走进去的 3D 城市
后端
程序员良辰11 小时前
【TongWeb8】使用 Crontab 定时重启和检测 TongWeb 服务
java·中间件·tomcat
mit6.82412 小时前
archived
后端·python·flask
大熊猫侯佩12 小时前
别再把大模型供在云端了,WWDC26 CoreAI 大模型下凡实战
ai编程·swift·wwdc
用户2986985301412 小时前
效率工具分享:3 款免费 Markdown 转 Word 在线转换器
人工智能·后端