只是为了好玩,我试图优化一个旧的桑巴服务器。 这是一个关于debian wheezy的3.6.6的samba 。 它有4个保税千兆以太网端口。 我正在testing不同的客户端。
它已经有点优化了。 阅读(重要的事情)似乎只是受到客户networking的限制。 所以我可以读取超过100MB / s。 写在另一方面只有22MB / s(Windows)和32MB / s(Debian wheezy)之间。 服务器磁盘足够快,CPU很无聊,所以我试着看着tcp转储。 在那里,我发现所有机器上的写入和读取之间的区别:TCP段长度(和TCP窗口大小)
当读取每个TCP数据包的有效负载比读取时大得多。 比较客户端似乎是这样的:有效负载越小,写入速度越慢。 我已经调整了在服务器端读写的套接字缓冲区,但我无法更快地写入。 有任何想法吗? 我正在寻找问题的正确方向,还是应该关注其他问题。 我如何影响分段的写作长度?
谢谢