关于Spring Cloud Gateway网关出现大量synchronoss-file-upload-1000031191618557455空文件夹的问题

本文探讨了近期SpringBoot 2.3.12和SpringCloud Hoxton.SR12升级后,线上服务因SynchronossPartHttpMessageReader的临时文件创建问题导致磁盘Inodes报警。作者提供了问题原因、官方解释和临时解决办法,建议关注并升级相关组件版本以避免文件炸弹问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近一个月升级SpringBoot版本到2.3.12.RELEASE, Spring Cloud升级到Hoxton.SR12以后,今天线上突然出现了,磁盘Inodes的报警,这本身比较危险的事,如果打满之后,服务将不可用,磁盘Inodes并非是磁盘容量被占满,而是磁盘文件生成过多导致的,通过进入到容器内查看,生成了很多类似于,synchronoss-file-upload-一串数字,这样的文件夹,里面都是空的。所以并不占用磁盘空间,但是Inodes却变大了,类似于文件夹炸弹。经过调查,发现是 ,  Spring-web中,5.2.15.RELEASE这个版本出现的问题,在SynchronossPartHttpMessageReader 这个类中。

 会有一个创建临时文件的方法存在,导致了每当有一个请求,就会创建一个临时文件。从而引发报警,Spring的官方在这里有所解释,https://github.com/spring-projects/spring-framework/issues/27092​​​​​​https://github.com/spring-projects/spring-framework/issues/27092

他们认为,这不是一个bug,但同样有人也遇到了相同的问题,

SynchronossPartHttpMessageReader created millions of temporary directories · Issue #2277 · spring-cloud/spring-cloud-gateway · GitHubDescribe the bug I found that wheather Content-Type is multipart/form-data or application/json, SynchronossPartHttpMessageReader will create a temporal directory with prefix "synchronoss-file-upload-" every request come, and these tempor...https://github.com/spring-cloud/spring-cloud-gateway/issues/2277所以在用到这个版本的时候,要特别注意留意这方面的问题。最后临时在网关中,升级了依赖的组件版本

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>5.2.16.RELEASE</version>
        </dependency>

到5.2.6.RELEASE,这个版本中逻辑稍加做了调整。解决了不断创建临时文件的问题。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值