Pipelining 在单个网络往返中发送多个 Redis 命令,而不是等待每个命令的回复再发送下一个。当发出许多命令时,它能显著提高吞吐量,因为网络延迟——而不是 Redis 本身——往往是瓶颈。
问题:往返延迟
Normally each command is a request→reply round-trip:
send GET → wait for reply → send GET → wait for reply → ... (N × network latency)
→ Redis processes each command in microseconds, but each round-trip adds network
latency (e.g. 0.5ms). For 1000 commands, that's ~500ms JUST in waiting!
Pipelining:批量处理命令
pipeline = redis.();
( id userIds) pipeline.();
results = pipeline.();
