热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

调研分享:图片文件在各文件系统上的访问性能对比

1概述在某产品线的图片服务器,存放了亿级别的图片文件,每个文件的大小在0.5k-100k之间,其中1K以下的文件数量在50%左右ÿ

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更适合图片服务。

By huanghaibin

 

【本文首发于:搜索研发部官方博客http://stblog.baidu-tech.com/?p=48
关注百度技术沙龙












本文转自百度技术51CTO博客,原文链接:http://blog.51cto.com/baidutech/743793,如需转载请自行联系原作者



推荐阅读
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细介绍了MicroATX(也称Mini ATX)和MATX主板规格,探讨了它们的结构特点、应用场景及对电脑系统成本和性能的影响。同时,文章还涵盖了相关操作系统的实用技巧,如蓝牙设备图标删除、磁盘管理等。 ... [详细]
  • 深入解析JVM垃圾收集器
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践》第二版,详细探讨了JVM中不同类型的垃圾收集器及其工作原理。通过介绍各种垃圾收集器的特性和应用场景,帮助读者更好地理解和优化JVM内存管理。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • 该平台旨在为大型企业提供一个高效、灵活且可扩展的分布式微服务架构解决方案。它采用模块化、微服务化和热部署的设计理念,结合当前最先进且无商业限制的主流开源技术,如Spring Cloud、Spring Boot2、MyBatis、OAuth2和Element UI,实现前后端分离的系统管理平台。 ... [详细]
  • andr ... [详细]
author-avatar
求所以
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有