不符合堆空间而按块读取请求数据

时间:2018-07-30 18:25:09

标签: java heap-memory spring-webflux

我有一个使用Spring-Webflux实现的POST-api,该对象将对象数组作为请求主体,而对其大小没有任何限制,例如 { "messages": [ { "id": "41f07eb9-40f3-4f31-a049-e561b4bd6f63", "value": "Occaecat amet incididunt pariatur laborum nisi duis tempor sint eiusmod consequat officia nisi." }, { "id": "ff415d87-8751-467e-b351-6d0b6f963b13", "value": "Voluptate laborum veniam incididunt eu irure pariatur amet fugiat fugiat laboris esse enim voluptate in." }, { "id": "caddd7e9-0b61-456b-b042-26a14c22cfb8", "value": "Fugiat cupidatat quis velit proident magna quis enim pariatur do qui magna ea excepteur ea." } .. ..... and so on] }并对其进行处理,现在我要做的是,以流方式处理传入的请求正文,是否可以在POST API中使用APPLICATION_STREAM_JSON_VALUE?示例可能是这样的:

@PostMapping(consumes = MediaType.APPLICATION_STREAM_JSON_VALUE)
public DemoMessage addToDB(@RequestBody DemoRequest demoRequest) {
   // delegate to some logic
}

我的主要目的是通过不加载整个有效负载来节省堆空间,而是以流方式一一对应地对其进行处理。任何建议或帮助都将受到高度重视。谢谢!

对此有任何建议/想法,将不胜感激。

0 个答案:

没有答案