存储课堂:NAS系存储统性能优化攻略(一)
EMC 林沛满 发表于:12年04月20日 10:29 [转载] IT168
如果这个文件不只128KB,5和6就不断重复,直至整个文件读完。在这个过程中,影响性能的因素有:
1. 客户端总是在收到上一个读请求的回复后,再发送下一个请求。这其实是一种低效率的工作方式。就像某人今晚想吃肯德基的鸡翅和汉堡,他先叫鸡翅外卖,等鸡翅送达后,再叫汉堡外卖。合理的方式是鸡翅和汉堡外卖一起叫。在读文件时体现为:
1. 客户端:我想读某文件。
2. NAS: 你有权限,读吧。
3. 客户端:先读64KB。
4. 客户端:再读接下来的64KB。
5. NAS:给你64KB。
6. NAS:给你64KB。
由于3和4(两个请求),以及5和6(两个回复)可以接连发送,所以节省了往返时间(如下图所示)。SMB2的读操作就是以这种方式工作的。为了优化性能,建议把Windows客户端升级到Windows Vista或以上,然后启用SMB2。
2. 客户端每次读的数据大小,也会影响到性能。在上面的例子中客户端每次读64KB,是一个比较好的数值。如果读的值特别小(比如4KB),会增加读操作和往 返次数,从而影响性能。这个值的大小是由客户端和服务器协商决定的。客户端上完全取决于应用程序,服务器上一般有设置选项。比如Windows服务器提供 了SizReqBuf这个注册表键值供用户设置。
3. 另外一个性能影响因素是服务器的响应时间。对于读操作,最常用的优化方式是启用“prefetch”。即服务器在回复了前一个读请求后,立即把接下来的数据从硬盘中读出,等着回复下一个请求。