幂等接收器
识别客户端的请求,以便在客户端重试时忽略重复的请求
问题
客户端向服务器发送请求,但可能不会收到响应。客户端无法确定响应是丢失了还是服务器在处理请求之前崩溃了。为了确保其请求得到处理,客户端必须重新发送请求。
如果服务器已经处理了请求,然后在此之后崩溃,当客户端重试时,服务器将收到重复的请求。
解决方案
通过为每个客户端分配唯一的ID来唯一标识客户端。
当服务器接收到请求时,它会检查是否已经处理了来自同一客户端的给定请求编号的请求。如果找到已保存的响应,它会将相同的响应返回给客户端,而不会再次处理请求。
欲了解更多详细信息,请前往在线电子书的第15章,位于oreilly.com上。
此模式是分布式系统模式的一部分
2023年11月23日