Размер буфера по умолчанию для BufferedInputStream и BufferedOutputStream составляет 8 КБ, и обычно это хороший размер.
Примечание: если вы читаете Socket достаточно быстро, вы редко получите больше одного пакета, ~ 1,5 КБ,Если вы читаете с диска, вы, как правило, получаете тот размер, который запрашиваете, однако производительность не сильно улучшается с 32 КБ до 256 КБ и, вероятно, будет зависеть от используемого вами оборудования.
Однако ятакже обнаружили, что если вы не проводите сравнительный анализ, вы редко видите заметную разницу, если вы используете только 512 байт в качестве размера буфера (что делают потоки Inflator / Deflator), то есть разница может составлять 15% или меньше.Вы вряд ли заметите разницу с размерами буфера между 512 байтами и 32 КБ.Последнее, вероятно, будет более чем достаточно для большинства ситуаций.Я обычно использую 256 КБ, так как у меня много памяти и несколько предварительно выделенных буферов.