Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8032796
  • 博文数量: 594
  • 博客积分: 13065
  • 博客等级: 上将
  • 技术积分: 10324
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-26 16:44
个人简介

推荐: blog.csdn.net/aquester https://github.com/eyjian https://www.cnblogs.com/aquester http://blog.chinaunix.net/uid/20682147.html

文章分类

全部博文(594)

分类: LINUX

2008-06-16 15:04:36

配置RAID的时候,有个可以手工设定的参数:Stripe size.
逻辑驱动器的Stripe size,代表控制器每次写入一块物理磁盘的数据量,以KB为单位。

不同Stripe size的选择直接影响性能,如IOPS和吞吐量。
Stripe size
值小,通过多块磁盘响应多个I/O请求,可以增加I/O访问速率(IOPS
Stripe size
值大,通过多块磁盘响应一个I/O请求,可以增加数据传输速率(Mbps

你可以使用performance monitor工具来评测Stripe size的设置对性能的影响。(显然这种评测要在测试环境里进行)
请按照如下指导方针进行评测:
1
如果典型的I/O sizeStripe size大,增加Stripe size,从而尽量减少响应同一个I/O请求的物理磁盘数量
这种设置适合于多用户、数据库、文件系统存储环境。使用单一磁盘响应单一请求,留下其他磁盘同时完成其他I/0请求。

2 对于单用户、I/O值大的环境(如多煤体应用存储),如果一个I/O请求能被一个data stripeStripe size乘以该ARRAY中响应I/O请求的磁盘数量)
所响应,将使性能优化。这种情况下,多块磁盘响应同一个I/O请求,但每块磁盘只被访问一次。

3 通常,小Stripe size适用于数据库,一般Stripe size适用于文件服务器,大Stripe size适用于多煤体应用。

4 增加Stripe size,理论上会增加最大磁盘吞吐量。

使用技巧:Stripe size大小可以设置为8 KB, 16 KB, 32 KB, 64 KB, 128 KB, 256 KB:
Storage Manager
设置Stripe size的默认值是
64 KB.
对于数据库应用,Stripe size4-16 KB之间被证明效果比较好;对于大文件环境,比如流煤体或CAD,建议Stripe size设置为128KB以上。

对于Web服务器以及文件打印服务器,建议Stripe size设置为16-64 KB.

注意:对Stripe size的设置是否合理,应该在生产系统运行前,进行性能测试以作出最后的决定。你可以动态调整Stripe size,但是数据重写过程会
影响性能。因此在生产系统下要慎重使用。

阅读(3080) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

aquester2008-06-16 15:08:15

随机IO度高的strip要大。对顺序IO依赖的就设小。不过我们的服务一般不会有顺序IO性能要求很高的。 send buffer可以考虑设到1M以上。不过那样只能用64位系统,否则马上socket buffer溢出。 /proc/sys/net/ipv4/下的tcp mem要设大,否则890M限制立马溢出。 普通SCSI并发10个线程基本上就是随机IO性能了。光纤RAID能到100个并发IO。随机IO性能很多,每盘每秒差不多300次不到。如果一次读32K,也就是10M/s的IO性能。RAID的strip一定要调很大,至少1M的大小。那些16K、64K的RAID对性能没有任何好处。 这些数据是否有热门访问,如果有的话可以考虑强制cache。也就是mmap+mlock。调调readahead的值。