• 针对文件系统和网络性能的测试


    由于工作需要,需要对文件系统和网络性能等进行测试:

    一、文件系统测试

    fio: 直接读取盘符下的data目录,测试结果和自己写程序,open(,DIRECT_IO)的结果几乎相近,很有说服力。

    iozone:能测多种读写方式,还能自动生成测试报告,可惜,即使指定屏蔽缓存,测试结果也不如fio真实。

    dd:这是最简单的测试工具了

    测试读:dd if=filepath of=/dev/null bs=2M count=512

    测试写:dd if=/dev/zero of=filepath bs=2M count=512

    经过测试基本可以得到如下结论:

    1. iozone指定-I选项后(屏蔽系统缓存),读的效率是原来的1/10,写的性能比原来略高;

    2. fread和fwrite有自己的缓冲区大小,在指定的缓冲区逐渐变大的过程中,fread的效率呈现为锯齿波状;

    3. dd在测试的时候,最好选择比内存大的文件来进行测试;而且以第一次的为准。(猜测应该是读文件的时候,系统把磁盘中的内容通过换页缓存到了内存中,如果文件可以是内存的两倍,那么可以很好地把内存清洗一遍,测试结果也就会更真实;当然写的时候也会在不断刷新内存的时候强制把数据刷到磁盘中,文件越大,测试结果也就越真实)

    4. 测试结果:

    SAS的读250MB/s左右,

    SSD的读870MB/s左右;

    RAID之后的SAS,RAID几就是几倍,当然会有损耗,10个的读1.6GB/s;

    MFS不管chunkserver在SAS或SSD上,同一台服务器,读都约为100MB/s;

    二、网络带宽测试

    1、iperf:通过调整窗口来测试带宽的,测试的结果应该接近真实,但是相对于实际应用偏高;

    2、ethtool -eth0:可以直观的看见指定网卡的带宽;

    3、wget、curl等:在服务端部署文件和nginx服务器,客户服务器下载把目标文件指向/dev/null,测试结果肯定比前两个的低。

    4、测试结果:(实际上网卡是肯定跑不满的)

    千兆网卡,最大带宽:117MB/s 

    百兆网卡,最大带宽:12MB/s

  • 相关阅读:
    设计模式面试
    Netty面试
    Nginx面试
    java后端面试
    springboot面试专题及答案
    SpringBoot整合Mybatis,TypeAliases配置失败的问题
    vscode调试html文件
    Linux性能检查命令总结[转]
    如何创建systemd定时任务
    Systemd简介与使用
  • 原文地址:https://www.cnblogs.com/bugutian/p/5930483.html
Copyright © 2020-2023  润新知