The BSON deserialization invoked a lot of single-byte reads on the input stream. Though the input stream is buffered, this caused a lot of CPU load. One of my streaming benchmarks went up from 10'000 reads/s to over 40'000 reads/s. The client's CPU was the bottleneck before. Now it is the network connection.