首页 > 解决方案 > Spring Controller 返回 blob 性能不佳

问题描述

我有一个带有 Spring Web MVC、Spring Security 和 Spring Data JPA 的 Spring Boot 应用程序,版本为 2.2.0。我在返回字节数组的公共控制器上遇到了非常糟糕的性能。传输一个 1.5MB 的 blob 需要 150-350 毫秒。“空” Spring Boot Starter 项目(来自 start.spring.io)中的相同控制器需要 <30ms 来传输 1.5MB。我不知道从哪里开始寻找问题。有任何想法吗?我通过在 Chrome 中请求文件来测量使用默认嵌入式 tomcat 服务器在 localhost 上的时间。

@GetMapping("/blob")
public ResponseEntity<byte[]> getBlob() {
    return ResponseEntity.ok()
            .contentType(MediaType.valueOf("image/jpeg"))
            .body(new byte[(int) (1024 * 1024 * 1.5)]);
}

标签: spring-boot

解决方案


推荐阅读