I was curious about this so I wrote a couple of small standalone programs, one using the loopback interface and one using ArrayBlockingQueue to send byte arrays from one thread to another.
The loopback version is about 50% slower than the ArrayBlockingQueue: Reader: read 4000000 tuples of size 128 in 3893 ms (ArrayBlockingQueue) Writer: wrote 4000000 tuples of size 128 in 3893 ms Writer: wrote 4000000 tuples of size 128 in 5783 ms (Loopback) Reader: read 4000000 tuples of size 128 in 5820 ms Ram On Fri, Nov 13, 2015 at 11:19 AM, Isha Arkatkar <[email protected]> wrote: > Hi all, > > For APEX-259 (https://malhar.atlassian.net/browse/APEX-259), I am > exploring option of passing serialized tuples from publisher to buffer > server through a blocking queue. > > Right now, publisher and buffer server reside within the same container, > however, communication between the two goes though sockets. We want to > check if we get any performance benefit by changing this communication to > queue-based one. > > This is in exploration phase right now, but if we do see improvement, we > may want to provide it as a pluggable option. > > Please let me know your thoughts! > > Thanks, > Isha
