This is what I call the balancing game - use 2 NIO threads