云优化分享:图片文件在各文件系统上的访问性
这个问题不好说,今天就由云优化帮大家简单的分析下 希望能给大家解释清楚
1 概述
在某产品线的图片服务器,存放了亿级别的图片文件,每个文件的大小在0.5k-100k之间,其中1K以下的文件数量在50%左右,1-4K文件数量在40%左右,4K以上10%,大量的文件存储对文件系统的性能要求非常高,特对目前业界常用系统性能在图片服务的表现进行调研。
因线上flash卡故障率非常高,所以在寻找替代方案,磁盘是否可以满足线上系统需求?是否满足今后可扩展性(容量、文件数量)?是否可以更好的处理数据同步使用时间?
2 预期解决问题
1、磁盘是否可以替换flash卡?
目前发现1Tflash卡故障率极高,严重时每周多次损坏,修复数据的时间很长,最少需要6个小时。
2、测试jfs reiserfs xfs ext2文件系统在图片业务上的性能表现(读写)。
3 测试方法及结果
3.1 测试方法
1、模拟线上环境,进行压力测试
搭建一套跟目前线上一样的系统环境,提取线上7天全部日志,采用压力工具(可以模拟数据全部返回)进行模拟线上环境进行压力测试(连续压力2小时以上)。
2、利用磁盘测试工具,进行设备性能测试
3、通过磁盘占用空间、inode节点数量进行对比
4、通过线上数据同步,测试同步所需时间
3.2 结果分析
1、使用磁盘完全可以替代flash
从模拟线上产品的压力得出结论使用HP机器采用jfs和ext2文件系统完全可以满足目前线上系统及未来一段时间内需求,如下表:
注:使用磁盘需要20分钟充cache,充cache期间的lighttpd的最大压力值2000.
2、图片服务目前的瓶颈在网卡
在进行模拟线上压力测试时,所有文件文件系统除dell-reiserfs外全部可以达到网卡流量峰值1G,随着时间推迟,平均值会下降,但是cpu也会逐渐空闲,
3、在各种文件系统性能在图片服务的业务测试中,得出如下结果
1)Flash卡上的ext2性能比较突出
2)磁盘上jfs的表现更适合目前线上业务
3)reiserfs的空间占用最小,比其他文件系统节约空间60%-65%
如下表:
4、修改线上图片更新脚本可以减少10%的时间,
5、各文件系统下数据同步时间耗用完全不同,ext2在flash卡上,jfs在磁盘的表现非常好。
如下表:
6、在磁盘上,HP机器的小文件处理能力比dell更适合图片服务。