我有一个模块负责读取,处理和写入字节到磁盘。 这些字节通过UDP进入,并且在各个数据报被组装之后,被处理和写入磁盘的最终字节数组通常在200字节和500,000字节之间。 偶尔会有字节数组,在组装后,超过500,000字节,但是这些是比较less见的。 我正在使用FileOutputStream的write(byte\[\])方法 。 我也在用BufferedOutputStream封装FileOutputStream ,包括使用接受缓冲区大小的构造函数作为参数 。 看起来,使用BufferedOutputStream的趋势往往略好,但我只是开始尝试不同的缓冲区大小。 我只有一个有限的样本数据集(来自样本运行的两个数据集,我可以通过我的应用程序)。 是否有一个一般的经验法则,我可以申请试图计算最佳的缓冲区大小,以减less磁盘写入,并最大限度地提高了磁盘写入的性能给定的信息,我知道我正在写的数据?