热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

最详细的CentOS6与7对比(三):性能测试对比

nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd

本主题将从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强!


推荐阅读
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 本文介绍了在Ubuntu 11.10 x64环境下安装Android开发环境的步骤,并提供了解决常见问题的方法。其中包括安装Eclipse的ADT插件、解决缺少GEF插件的问题以及解决无法找到'userdata.img'文件的问题。此外,还提供了相关插件和系统镜像的下载链接。 ... [详细]
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社区 版权所有