小编mak*_*k-g的帖子

使用接受文件的弹簧控制器防止内存不足错误

假设我正在使用 Spring 设计一个 REST 服务,并且我需要一个接受文件并返回某种 ResponseDto 的方法。应用程序服务器的 POST 请求大小限制为 100MB。这是假设的弹簧控制器方法实现:

public ResponseEntity<ResponseDto> uploadFile(@RequestBody MultipartFile file) {
        return ResponseEntity.ok(someService.process(file));
} 
Run Code Online (Sandbox Code Playgroud)

假设我的服务器有 64GB RAM。如果在短时间内(足够短,足以让process()方法仍然对上传的每个文件运行),1000 个用户决定上传 100MB 文件(或者只有 1 个用户同时上传),如何确保不会出现内存不足错误1000 个文件)?

编辑:为了澄清,我想确保我的应用程序不会崩溃,而只是停止接受/延迟新请求。

java upload spring file out-of-memory

5
推荐指数
1
解决办法
3759
查看次数

标签 统计

file ×1

java ×1

out-of-memory ×1

spring ×1

upload ×1