请求批处理

组合多个请求以优化网络利用率

问题

如果大量请求发送到具有少量数据的集群节点,网络延迟和请求处理时间(包括服务器端请求的序列化和反序列化)会增加显著的开销。

例如,在具有 1gbps 容量的网络中,如果延迟和请求处理时间为 100 微秒,并且客户端同时发送数百个请求,即使每个请求只有几个字节,也会显著限制整体吞吐量。

解决方案

将多个请求组合到一个请求批处理中。请求批处理将发送到集群节点进行处理,每个请求的处理方式与单个请求完全相同。然后,节点将以批处理响应的形式进行响应。

有关更多详细信息,请访问 oreilly.com 上的在线电子书第 31 章

此模式是分布式系统模式的一部分

2023 年 11 月 23 日