aboutsummaryrefslogtreecommitdiff
path: root/src/protocol/pair/pair.c
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2017-01-06 18:26:28 -0800
committerGarrett D'Amore <garrett@damore.org>2017-01-06 18:26:28 -0800
commite1d963b2d35dac0e0332a8654befdb327dc0094c (patch)
treedee3d4cdd0fd56e203723413542ddf0d737e74b6 /src/protocol/pair/pair.c
parentf0cf0d11a0ec35fb6c0b65351d5a8bb311dc091d (diff)
downloadnng-e1d963b2d35dac0e0332a8654befdb327dc0094c.tar.gz
nng-e1d963b2d35dac0e0332a8654befdb327dc0094c.tar.bz2
nng-e1d963b2d35dac0e0332a8654befdb327dc0094c.zip
Initial swag at pipeline (PUSH/PULL).
PUSH attempts to do a round-robin based distribution. However, I noticed that there is a bug in REQ, because REQ sockets will continue to pull down work until the first one no longer has room. This can in theory lead to scheduliung imbalances when the load is very light. (Under heavy load, the backpressure dominates.) Also, I note that mangos suffers the same problem. It does not make any attempt to deliver work equally, basically each pipe winds up pulling messages until its own buffers are full. This is bad. We can borrow the logic here for both REQ and mangos. None of this is tested yet.
Diffstat (limited to 'src/protocol/pair/pair.c')
0 files changed, 0 insertions, 0 deletions