欢迎光临
我们一直在努力

SAP Gateway $batch 查询并行化详解,性能收益、资源边界与服务级控制

一个 SAP Fiori 应用在初始化页面时,经常会通过一次 OData $batch 请求读取多组业务数据。浏览器的 Network 面板里看起来只有一次 HTTP 请求,但这个现象很容易带来一个误解,仿佛放进 $batch 的多个查询天然就会同时执行。

实际上,$batch 和 Batch Query Parallelization 是两个不同层面的能力。

$batch 解决的是 HTTP 往返次数问题。SAP Gateway 允许客户端把多个 OData 操作封装进一个 multipart MIME 消息,再通过一次 HTTP POST 请求发送到服务的 $batch Endpoint。多个逻辑请求因此可以共享一次 Client 到 SAP Gateway 的网络往返。SAP 官方文档对这一点有明确说明,Batch Request 是一个 multipart MIME v1.0 消息,可以在一个 HTTP 请求中承载多个 OData 操作。

而 Batch Query Parallelization 处理的是另外一个问题,已经进入 SAP Gateway 后端执行阶段以后,这些彼此独立的 Query 到底是一条一条顺序执行,还是尽可能同时执行。

这两个概念放在一起理解很重要。

一次 $batch 请求减少了网络 Roundtrip,并不代表其中的 Query 已经并行。反过来,开启 Batch Query Parallelization 也没有改变 OD

赞(0)
未经允许不得转载:171主机测评 » SAP Gateway $batch 查询并行化详解,性能收益、资源边界与服务级控制
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址