本主题将从3个角度进行对比

  1. 常见设置(CentOS 6 vs CentOS 7)
  2. 服务管理(Sysvinit vs Upstart vs Systemd)
  3. 性能测试(cpu/mem/io/oltp)

本文为第三部分:性能测试的对比


1. CPU测试

工具: 通过sysbench对cpu进行压力测试

参数设置

  • 素数: 10000
  • 测试时间: 900秒
  • 线程数: 1、6、12、18、24、30、36、42

分别测试使用睿频和不实用睿频

> 图1: cpu测试 - 每秒events

如何看图:越高越好

此图结论:

  • cpu性能基本一致
  • CentOS 7固定频率(不使用睿频),并没有提升性能,因此没有关闭睿频的必要

> 图2: cpu测试 - event数量标准差

如何看图:越少越好

此图结论:

  • 通过标准差可以看出在稳定性方面,CentOS 7要稳定很多(包括不使用睿频)

2. 内存测试

工具: 通过sysbench对内存进行压力测试

参数设置

  • 读写方式: 随机
  • 测试时间: 900秒
  • 分别测试读和写
  • 块大小: 4K、16K、2M
  • 线程数: 1、12、24、36、48

> 图1: 内存测试 - 速率

如何看图:越高越好

此图结论:

  • CentOS 6和CentOS 7性能一致

> 图2: 内存测试 - event数量标准差

如何看图:越少越好

此图结论:

  • 通过标准差可以看出在稳定性方面,CentOS 7要稳定很多

3. IO测试

工具: 通过fio对io进行压力测试

参数设置

  • ioengine: libaio
  • iodepth: 16
  • 测试时间: 900秒
  • 文件大小: 100G
  • 运行方式: 线程
  • 缓存方式: 无缓存(non-buffered I/O)
  • 读写方式: 随机读写
  • 块大小: 分别测试4K和16K
  • 线程数: 1、12、24、36、48

> 图1: io测试 - iops

如何看图:越高越好

此图结论:

  • CentOS 6(默认ext4)不如CentOS 7(默认xfs)
  • CentOS 6(默认ext4)不如CentOS 6(xfs)

> 图2: io测试 - 读写平均延时

如何看图:越少越好

此图结论:

  • CentOS 7的写延时和CentOS 6(默认ext4)接近
  • CentOS 7的读延时比CentOS 6(默认ext4)好很多

4. OLTP测试

工具: 通过tpcc-mysql对整机性能进行测试

参数设置

  • 文件系统: 均为xfs
  • mysql版本: mysql-8.0.12
  • tpcc_load:
    • warehouse: 100
    • sql: create_table.sql、add_fkey_idx.sql
    • 运行时长: 没有限制,跑完将近1小时
  • tpcc_start:
    • warehouse: 100
    • warmup: 300秒
    • 运行时长: 1800秒
    • 线程数: 16、32、64、128、256、512、1024

> 图: oltp测试 - tpmc

如何看图:越高越好

此图结论:

  • CentOS 7比CentOS 6(默认ext4)高

5. 总结

/ CentOS 6(ext4)vs CentOS 7(xfs)
cpu - 每秒events 打平手
cpu - event数量标准差 CentOS 7 win
mem - 传输速率 打平手
mem - event数量标准差 CentOS 7 win
io - iops CentOS 7 win
io - 读写平均延时 CentOS 7 win
tpcc - mysql CentOS 7 win

如图所示,本次一共做了7项,其中有2项是CentOS 6与7基本一致,另外5项都是CentOS 7明显胜出,因此可以得出结论:CentOS 7的性能比CentOS 6强!

最详细的CentOS 6与7对比(三):性能测试对比的更多相关文章

  1. 超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群

    超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群 ps:本文的步骤已自实现过一遍,在正文部分避开了旧版教程在新版使用导致出错的内容,因此版本一致的情况下照搬执行基本不会有大错误. ...

  2. 【系统】CentOS、Ubuntu、Debian三个linux比较异同

    CentOS.Ubuntu.Debian三个linux比较异同 2014-07-31 12:58             53428人阅读             评论(6)             ...

  3. PostgreSQL单机、同步复制、异步复制性能测试对比

    测试环境: •测试机:PC •内存:8GB •CPU:Intel(R) Core(TM) i5-3450 3.10GHz •硬盘:HDD •数据量:20GB •测试工具:pgbench •Postgr ...

  4. mysql对比表结构对比同步,sqlyog架构同步工具

    mysql对比表结构对比同步,sqlyog架构同步工具 对比后的结果示例: 执行后的结果示例: 点击:"另存为(S)" 按钮可以把更新sql导出来.

  5. 跨代的对决 英特尔i7-6700HQ对比i7-4720HQ性能测试

    http://itianti.sinaapp.com/index.php/cpu 跨代的对决 英特尔i7-6700HQ对比i7-4720HQ性能测试 2015-10-13 19:46:31 来源:电脑 ...

  6. CentOS、Ubuntu、Debian三个linux比较异同

    Linux有非常多的发行版本,从性质上划分,大体分为由商业公司维护的商业版本与由开源社区维护的免费发行版本. 商业版本以Redhat为代表,开源社区版本则以debian为代表.这些版本各有不同的特点, ...

  7. CentOS、Ubuntu、Debian三个linux比较异同[转]

    Linux有非常多的发行版本,从性质上划分,大体分为由商业公司维护的商业版本与由开源社区维护的免费发行版本. 商业版本以Redhat为代表,开源社区版本则以debian为代表.这些版本各有不同的特点, ...

  8. CentOS添加环境变量的三种方式

    CentOS添加环境变量的三种方式,以添加php环境变量为例,假定php的安装目录为 /usr/local/php5 一.仅对当前会话临时生效 [root@bogon ~]# export PATH= ...

  9. [转帖]Docker五种存储驱动原理及应用场景和性能测试对比

    Docker五种存储驱动原理及应用场景和性能测试对比 来源:http://dockone.io/article/1513 作者: 陈爱珍 布道师@七牛云   Docker最开始采用AUFS作为文件系统 ...

  10. CentOS下Docker与.netcore(三)之 三剑客之一Docker-Compose

    CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.netcore(二) 之 Dockerfile CentOS下Docker与.netcore(三)之 三剑客 ...

随机推荐

  1. css下拉菜单写法

    网页导航栏的下拉效果,通过div框的显示和隐藏实现. <html> <head> <meta charset="UTF-8"> <titl ...

  2. macOS下登录store或者xcode等应用时提示【this action could not be completed】

    sudo mkdir -p /Users/Shared sudo chown root:wheel /Users/Shared sudo chmod -R 1777 /Users/Shared === ...

  3. Memcached 之取模与哈希算法命中率实验

    当5台memcache服务器中有一台宕机时的命中率实验. 一.php实现代码 1. config.php $server = array( "A" => array(&quo ...

  4. this、super关键字以及他们各自的作用

    this:代表当前对象的引用,谁来调用我,我就代表谁 super:代表当前对象父类的引用 this和super的使用区别 A:调用成员变量 this.成员变量  调用本类的成员变量,也可以调用父类的成 ...

  5. 团体程序设计天梯赛-练习集-L1-047. 装睡

    L1-047. 装睡 你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次.下面给 ...

  6. matlab学习下拉菜单Pop-Up Menu的基本用法

    创建下拉菜单,修改string的属性,tag改为kj1,value值如果是1就显示第一行的sin(x),是几就显示第几行 %可以更改value值var=get(handles.kj1,'value') ...

  7. PHP第四天 函数引用传值

    <?php function f1($p1,&$p2){ $p1++; $p2++; $result= $p1+ $p2; return $result;}$v1=10;$v2=20;$ ...

  8. 第2章 this 、 call 和 apply

    第一部分 基础知识 第2章  this . call 和 apply 2.1  this JavaScript的 this 总是指向一个对象,而具体指向哪个对象是在运行时基于函数的执行环境动态绑定的, ...

  9. js:多种方法实现数组去重

    面试的时候数组去重要多种方法实现, 只想到一种判断重复删除的方法,而且还没写对.后来大概看了一下网上的方法. 下午想到一个网上没见过的filter方法,于是整理了一下,基于以前看到的思想,然后用了一些 ...

  10. Shell入门基础

    Shell的Helloworld #!/bin/bash echo "helloworld taosir" 执行方式 方式一:用 bash 或 sh 的相对或绝对路径(不用赋予脚本 ...