Spring Cloud Data Flow HTTP Source Kafka请求体内存限制问题求助
问题原因
该错误是Spring WebFlux默认限制了请求体的最大内存缓冲区大小为256KB(即报错提示的262144字节),当请求体超过该阈值时就会触发异常。你之前配置未生效的核心原因是遗漏了WebFlux服务端的POST请求整体大小限制配置,部分场景也可能是配置格式不符合部署环境要求。
修复方案
根据你的使用场景选择对应配置方式即可:
场景1:单独启动官方HTTP Source Jar包
直接在启动命令中添加两个配置参数,可根据实际业务请求的最大体积调整10MB为对应阈值:
java -jar http-source-kafka-3.1.1.jar --spring.codec.max-in-memory-size=10MB --server.max-http-post-size=10MB
场景2:在Spring Cloud Data Flow中部署流
- 若使用yaml格式配置部署属性,写法如下:
app: http: # 此处替换为你流定义中HTTP源节点的实际名称 spring: codec: max-in-memory-size: 10MB server: max-http-post-size: 10MB
- 若使用properties格式配置部署属性,写法如下:
app.http.spring.codec.max-in-memory-size=10MB app.http.server.max-http-post-size=10MB
验证方式
配置生效后发送超过700KB的POST请求到HTTP源端点,没有抛出缓冲区超限异常,且下游Kafka的output topic能收到对应消息即为修复成功。
内容的提问来源于stack exchange,提问作者Harish Ambady
相关产品推荐
相关产品推荐

