Pipelining wysyła wiele poleceń Redis w jednej rundzie sieciowej zamiast czekać na odpowiedź każdego polecenia przed wysłaniem następnego. Dramatycznie poprawia przepustowość przy wydawaniu wielu poleceń, ponieważ opóźnienie sieciowe — a nie sam Redis — jest często wąskim gardłem.
Problem: opóźnienie rundowe
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: grupowanie poleceń
pipeline = redis.();
( id userIds) pipeline.();
results = pipeline.();
