spring-boot - 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)]);
}
解决方案
推荐阅读
- python - 在 Django 中,如何在使用 generic.CreateView 创建新对象时更新所有对象?
- python - 使用 seaborn 如何绘制包含 70 多个类别的列
- java - 存储在数组 java 中的数字错误
- jsf - JSF 2.1 和 RichFaces 迁移到 JSF 2.2
- javascript - 无法从 js 对象获取内容
- swift - 使用 Firebase 在 TableviewCell 中填充 Collectionview
- html - 为什么我的 div 元素没有在我的屏幕上隔开?
- python - 如何在 Python 中对 HDF5 文件进行排序
- adaptive-cards - 自适应卡片 - 是否可以强制用户在允许 Action.Submit 之前在输入文本字段中输入内容
- ios - 检测何时在 SwiftUI 中从后台打开特定视图?