请求管道
通过在连接上发送多个请求而不等待先前请求的响应来提高延迟。
问题
如果请求需要等待先前请求的响应,则使用 单套接字通道 在集群内服务器之间进行通信可能会导致性能问题。为了获得更好的吞吐量和延迟,服务器上的请求队列应该填满以确保服务器容量得到充分利用。例如,当 单一更新队列 在服务器内使用时,它始终可以接受更多请求,直到队列填满,同时它正在处理请求。如果一次只发送一个请求,则大部分服务器容量会被浪费。
解决方案
节点在不等待先前请求的响应的情况下向其他节点发送请求。这是通过创建两个独立的线程来实现的,一个用于通过网络通道发送请求,另一个用于接收来自网络通道的响应。
有关更多详细信息,请访问 oreilly.com 上的在线电子书 第 32 章。
此模式是 分布式系统模式 的一部分。
2023 年 11 月 23 日