Recently I’ve got interesting task related to random data generation and writing this data on disk as fast as possible using Java. Unfortunately performance requirements were really tight: in peak application should support writing at ~3 Gb/s. Which means that it should generate random data at really high pace, encode it to proper charset and finally write to disk. That’s pretty much an exposition and motivation behind following measurements and why it was so important to dig in.
Tech blog