SlideShare a Scribd company logo
1 of 34
Download to read offline
服务器基准测试
                 叶金荣
            @yejinrong
     http://imysql.com
            2012-11-30
写在最前面
 • 非专业人士整理,有任何不正确的地方请指正
 • 测试结果表格模板中的数据不准确,可以无视
概要

    服务器是业务的基础单元,提供线上业务服务,存储
 着重要数据,如何保证服务器高性能、高可靠运行非常关键。

         对于服务器硬件一般关注几点:
     –   和老一代产品对比,改变或优化的地方
     –   和同档次其他厂商产品对比,优劣之处
     –   服务器可靠性、性能表现
     –   设计特点、功耗


         了解上述几点后,针对服务器的测试也就有了相应的
 方案。
大纲
•   技术指标对比
•   测试工具
•   性能基准测试
•   可靠性测试
    – 模拟意外事件
    – 长期极限高压
    – 模拟恶劣环境
• 测试报告
• 附件下载
技术指标对比

 技术指标     DELL PE R720            DELL PE R710
 机型       2U PC Server            2U PC Server
 CPU      Xeon E5-2620(6核,12线程,Xeon E5620(4核,8线程,
          2.0GHz, L3 15MB) * 2 2.4GHz,L3 12MB) * 2
 总线       QPI 6.4GT/s             QPI 5.86GT/s
 主板芯片组 Intel C600                 Intel 5520
 内存       32G(4G * 8,ECC DDR3)    32G(4G * 8,DDR3)
 阵列卡      PERC H710,512MB,        PERC H700,512MB,
          BBU(FW:12.10.1-0001),   BBU(FW:12.10.1-0001),
          RAID 1+0                RAID 1+0
 硬盘       15K RPM 300G SAS * 8    15K RPM 300G SAS * 6
 网卡       Intel 4端口 1GbE          Broadcom 4端口 1GbE
 电源       495瓦,冗电                 500瓦,冗电
性能基准测试 – 关注点

 • 何为基准
  – 通过设计科学的测试方法、测试工具和测试系统,实现对一类测
    试对象的某项性能指标进行定量的和可对比的测试(百度百科)
 • 重点关注
  –   CPU:计算,尤其是浮点运算
  –   内存:带宽、吞吐
  –   磁盘:IOPS、响应时间
  –   数据库:OLTP、OLAP、响应时间
 • 注意事项
  – 持续压力过大无法反应服务器真实最优表现
  – 持续压力时间过短亦无法反应服务器真实最优表现
性能基准测试 – 关注点

 • CPU
   – 简单素数计算、复杂浮点计算
   – thread分配
   – mutex性能


 • 关注信息
   – 计算能力
   – 多线程并发
   – mutex管理

     常地,随着计算机工艺的发展,大部分应用下,CPU几乎不再成
   为瓶颈。。一般只关注不同品牌厂商、不同工艺、不同主频下的不
   同表现,其他情况下,无需太多关注。
性能基准测试 – 关注点

 • 内存
  – 总带宽
  – 读写效率
  – CPU对内存的管理分配


 • 关注信息
  – 读写效率

    通常,内存越大越好,可有效减少磁盘物理IO。一般只关注不
  同品牌厂商、不同工艺、不同主频下的不同表现,其他情况下,无
  需太多关注。
性能基准测试 – 关注点

 • 磁盘IOPS
   – 读写效率
   – 随机写性能


 • 关注信息
   –   不同内核、文件系统下的IOPS
   –   不同阵列级别、条带场景下的IOPS
   –   和内存结合时的IOPS性能拐点
   –   达到同样IOPS情景下,IO利用率差别
   –   跑满IO以及IO压力较轻情景下,各自IO利用率差别
   –   sar -d:tps、svctm、%util

      通常,磁盘物理IO是这个计算机体系里最容易成为瓶颈的环节,
   也是最难优化的,因此最需要关注。随着SSD、Fusion-IO出现,磁
   盘IOPS获得了巨大提升,和内存相比,差距在不断缩小。
性能基准测试 – 关注点

 • OLTP/OLAP
   – TPS、QPS、
   – 响应延迟/分析、吞吐效率


 • 关注信息
   –   不同内核、文件系统下的TPS
   –   不同阵列级别、条带场景下的TPS
   –   和内存结合时的TPS性能拐点
   –   达到同样TPS情景下,IO负载差别
   –   TPS满负荷、低负荷情景下,各自IO利用率差别
   –   sar -d:tps、svctm、%util

      通常,数据总量超过物理内存后,OLTP的TPS性能和磁盘IOPS
   成正比关系。因此,只有不断提高内存,减少物理IO,并且不断提
   升IOPS性能。
性能基准测试 – 关键因素

 • 硬件
  – CPU、内存、阵列卡(BBU、CACHE、条带、读写策略)、硬盘
 • 系统
  – 内核参数、文件系统、IO调度器
 • 文件
  – 块大小、访问模式
 • 其他
  – 网络环境对over lan请求测试影响大
  – 每完成一轮测试后要净化环境
  – 每轮测试一般至少持续1小时
测试工具
 • sysbench
   – Primarily for MySQL OLTP benchmarking,By MySQL AB
   – cpu、threads、mutex、memory、fileio、oltp
 • iozone
   – filesystem benchmark tool
 • tpcc-mysql
   – Primarily for MySQL OLTP benchmarking,By Percona
 • tpch
   – Primarily for OLAP benchmarking
 • 其他
   – OLTP:mysqlslap、sql-bench
   – IOPS:bonnie、orion、 iometer
   – 综合:stress
测试工具 - sysbench

  • 安装
   – ./configure --with-mysql-includes=path --with-mysql-
     libs=path && make && make install


  • 支持其他数据库
   – with-pgsql
   – with-oracle


  • 运行
   – sysbench --test=[mode] [other_options] prepare
   – sysbench --test=[mode] [other_options] run
   – sysbench --test=[mode] [other_options] cleanup
测试工具 - sysbench

  • 通用基准
    – 最大请求数:5,000,000
    – 并发线程数:8 ~ 512


  • 基准 - cpu
    – cpu-max-prime=500,000


  • 基准 - threads
    – thread-yields=5,000,000
    – thread-locks=8~512
测试工具 - sysbench

  • 基准 - mutex
    – mutex-num=5,000,000
    – mutex-loops=100,000
    – mutex-locks=100,000


  • 基准 - fileio
    – file-num=100
    – file-total-size=物理内存 ~ 物理内存的8倍
    – mode=seqwr/seqrewr/seqrd/rndrd/rndwr/rndrw
测试工具 - sysbench
  • 基准 - memory
    – mode=complex
    – engine=innodb
    – oltp-table-size=100,000,000


  • 基准 – OLTP
    – mode=complex
    – engine=innodb
    – oltp-table-size=100,000,000
测试工具 - sysbench

  • fileio mode

    seqwr     顺序写
    seqrewr   顺序重写
    seqrd     顺序读
    rndrd     随机读
    rndwr     随机写
    rndrw     随机读写


  • OLTP mode

    nontrx    无事务
    simple    简单请求
    complex   复杂请求,有事务
测试工具 - iozone

 • 安装
    – make linux-AMD64


 • 运行
   – iozone -R -E -s 3200M -l 10 -r 4k
测试工具 - iozone

 • 基准 - fileio
   –   file-block-size=4k 8k 16k 32k 64k
   –   file-num=1 2 4 8 16
   –   file-size=1G 2G 4G 8G 16G
   –   mode=seqwr/seqrewr/seqrd/rndrd/rndwr/rndrw
测试工具 - tpcc mysql

  • 安装
     –   下载 bzr branch lp:~percona-dev/perconatools/tpcc-mysql
     –   直接make即可
     –   create_table.sql - 创建数据表
     –   add_fkey_idx.sql – 创建索引及外键


  • 初始化加载数据
     – tpcc_load db_host db_name db_user db_passwd
       db_warehouse_num
     – 例如:tpcc_load localhost tpcc1000 user passwd 1000


  • 运行OLTP测试
    – ./tpcc_start -h localhost -d tpcc1000 -u root -p ' xx' -w 1000
      -c 32 -r 120 -l 3600 -f ./tpcc_mysql_20120314
测试工具 - tpcc mysql

  • 基准 - OLTP
    –   warehouse = 1000
    –   max connection = 8 ~ 512
    –   warm up = 120(s)
    –   run time/duration = 3600(s)
测试工具 – tpch

 • 安装
   – cp makefile.suite makefile
   – 编辑 makefile 文件
      CC = gcc
      DATABASE = MYSQL
      MACHINE = LINUX
      WORKLOAD = TPCH
   – 编辑tpcd.h,增加宏定义
      #ifdef MYSQL
      #define GEN_QUERY_PLAN ""
      #define START_TRAN "START TRANSACTION"
      #define END_TRAN "COMMIT"
      #define SET_OUTPUT ""
      #define SET_ROWCOUNT "limit %d;n"
      #define SET_DBASE "use %s;n"
      #endif
测试工具 – tpch

 • 初始化
   –   初始化测试表数据: ./dbgen -s 100
   –   生成测试数据:mysql -f tpch < dss.ddl
   –   默认的初始化模式无主键、无索引
   –   LOAD DATA INFILE导入数据
   –   注意max_binlog_cache_size限制,需要切分文件导入
   –   执行修改主键/外键/额外索引脚本
   –   数据表名全部改成小写,适应TPC-H测试SQL脚本
   –   运行qgen生成测试SQL
   –   修改部分SQL语句
   –   拆分完成测试SQL脚本成23个测试SQL


 • 运行
   – 执行23个测试脚本,记录运行时长
测试工具 – tpch

 • 基准 - tpch
   – warehouse = 100
   – 单进程
   – tpch侧重OLAP模型,而MySQL并不适合OLAP,因此
     warehouse设定较小
测试报告

 • cpu - sysbench
测试报告

 • memory - sysbench
测试报告

 • fileio - sysbench
测试报告

 • fileio - iozone
测试报告

 • oltp - sysbench
测试报告

 • oltp - tpcc
测试报告

 • olap – tpch
可靠性测试

 • 模拟意外事件
  –   断电(硬件冷重启)
  –   RESET(硬件热重启)
  –   阵列卡掉线
  –   磁盘掉线
  –   REBOOT(系统重启)
  –   正常关闭服务(kill -TERM)
  –   异常关闭服务(kill -9)
  –   磁盘空间满
  –   删除文件
  –   破坏性修改已打开文件
  –   …
可靠性测试

 • 长期极限高压
  – 持续数小时、数天、数周运行高负载计算、IO任务
  – 考验服务器在高压下的性能波动情况
  – 考验硬件设备在高压下的稳定性表现


 • 模拟恶劣环境
  – 供电不稳
  – 通风冷却不好
  – 湿气大、灰尘多
附件
 • 整合sysbench测试脚本 [下载]
 • 整合iozone测试脚本 [下载]
 • 整合tpcc-mysql测试脚本 [下载]
 • 整合tpch测试脚本 [下载]
 • 汇总下载 [下载]
 • 测试结果表格模板 [下载]

More Related Content

What's hot

1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构Louis liu
 
4 葉金榮-my sql優化 - 20151219
4 葉金榮-my sql優化 - 201512194 葉金榮-my sql優化 - 20151219
4 葉金榮-my sql優化 - 20151219Ivan Tu
 
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践drewz lin
 
Mysql调优
Mysql调优Mysql调优
Mysql调优ken shin
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践孙立
 
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术团队
 
Database.Cache&Buffer&Lock
Database.Cache&Buffer&LockDatabase.Cache&Buffer&Lock
Database.Cache&Buffer&LockLixun Peng
 
对MySQL应用的一些总结
对MySQL应用的一些总结对MySQL应用的一些总结
对MySQL应用的一些总结Lixun Peng
 
Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at TaobaoJoshua Zhu
 
课题三:Nginx基础知识
课题三:Nginx基础知识课题三:Nginx基础知识
课题三:Nginx基础知识Liu Allen
 
阿里CDN技术揭秘
阿里CDN技术揭秘阿里CDN技术揭秘
阿里CDN技术揭秘Joshua Zhu
 
基于MySQL的分布式数据库实践
基于MySQL的分布式数据库实践基于MySQL的分布式数据库实践
基于MySQL的分布式数据库实践jackbillow
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Yang Guanjun
 
构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构Cosey Lee
 
快速搭建高性能服务端
快速搭建高性能服务端快速搭建高性能服务端
快速搭建高性能服务端moonbingbing
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.pptFrank Cai
 
redis 适用场景与实现
redis 适用场景与实现redis 适用场景与实现
redis 适用场景与实现iammutex
 

What's hot (20)

1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构
 
4 葉金榮-my sql優化 - 20151219
4 葉金榮-my sql優化 - 201512194 葉金榮-my sql優化 - 20151219
4 葉金榮-my sql優化 - 20151219
 
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践
 
Mysql调优
Mysql调优Mysql调优
Mysql调优
 
Ceph perf-tunning
Ceph perf-tunningCeph perf-tunning
Ceph perf-tunning
 
Ceph intro
Ceph introCeph intro
Ceph intro
 
Ceph monitor-op
Ceph monitor-opCeph monitor-op
Ceph monitor-op
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践
 
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践
 
Database.Cache&Buffer&Lock
Database.Cache&Buffer&LockDatabase.Cache&Buffer&Lock
Database.Cache&Buffer&Lock
 
对MySQL应用的一些总结
对MySQL应用的一些总结对MySQL应用的一些总结
对MySQL应用的一些总结
 
Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at Taobao
 
课题三:Nginx基础知识
课题三:Nginx基础知识课题三:Nginx基础知识
课题三:Nginx基础知识
 
阿里CDN技术揭秘
阿里CDN技术揭秘阿里CDN技术揭秘
阿里CDN技术揭秘
 
基于MySQL的分布式数据库实践
基于MySQL的分布式数据库实践基于MySQL的分布式数据库实践
基于MySQL的分布式数据库实践
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析
 
构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构
 
快速搭建高性能服务端
快速搭建高性能服务端快速搭建高性能服务端
快速搭建高性能服务端
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.ppt
 
redis 适用场景与实现
redis 适用场景与实现redis 适用场景与实现
redis 适用场景与实现
 

Viewers also liked

Ccresa officeof innovativeprojects_2011_final
Ccresa officeof innovativeprojects_2011_finalCcresa officeof innovativeprojects_2011_final
Ccresa officeof innovativeprojects_2011_finalEarly On Michigan
 
Postdoctoral Research @ NAWCWD
Postdoctoral Research @ NAWCWDPostdoctoral Research @ NAWCWD
Postdoctoral Research @ NAWCWDSean Clancy, Ph.D.
 
Social Emotional Health: A Guide for Families with Children Birth to Age 8
Social Emotional Health: A Guide for Families with Children Birth to Age 8Social Emotional Health: A Guide for Families with Children Birth to Age 8
Social Emotional Health: A Guide for Families with Children Birth to Age 8Early On Michigan
 
Miaeyc early childhood_march_2011
Miaeyc early childhood_march_2011Miaeyc early childhood_march_2011
Miaeyc early childhood_march_2011Early On Michigan
 
Historia De Engormix
Historia De EngormixHistoria De Engormix
Historia De EngormixEngormix.com
 
Historia De Engormix
Historia De EngormixHistoria De Engormix
Historia De EngormixEngormix.com
 
Hp dl380 g7测试结果报告 - 20100823
Hp dl380 g7测试结果报告 - 20100823Hp dl380 g7测试结果报告 - 20100823
Hp dl380 g7测试结果报告 - 20100823Jinrong Ye
 
Watch Me Grow 2009-2010 Calendar
Watch Me Grow 2009-2010 CalendarWatch Me Grow 2009-2010 Calendar
Watch Me Grow 2009-2010 CalendarEarly On Michigan
 
ibbackup vs mysqldump对比测试 - 20080718
ibbackup vs mysqldump对比测试 - 20080718ibbackup vs mysqldump对比测试 - 20080718
ibbackup vs mysqldump对比测试 - 20080718Jinrong Ye
 
Bpclfinalbrochure 110721130723-phpapp02
Bpclfinalbrochure 110721130723-phpapp02Bpclfinalbrochure 110721130723-phpapp02
Bpclfinalbrochure 110721130723-phpapp02Bharat Petroleum
 
Red Flags of Development Birth to 48 Months
Red Flags of Development Birth to 48 MonthsRed Flags of Development Birth to 48 Months
Red Flags of Development Birth to 48 MonthsEarly On Michigan
 
CreditRiskMonitor Brochure
CreditRiskMonitor BrochureCreditRiskMonitor Brochure
CreditRiskMonitor Brochurekmacdonald2
 
Michigan's LICC Parent Handbook
Michigan's LICC Parent HandbookMichigan's LICC Parent Handbook
Michigan's LICC Parent HandbookEarly On Michigan
 
White House Travel Bloggers Summit - U.S. Study Abroad
White House Travel Bloggers Summit - U.S. Study AbroadWhite House Travel Bloggers Summit - U.S. Study Abroad
White House Travel Bloggers Summit - U.S. Study AbroadU.S. Department of State
 
Rute Surabaya Bantul
Rute Surabaya BantulRute Surabaya Bantul
Rute Surabaya Bantulsalafymail
 

Viewers also liked (20)

Ccresa officeof innovativeprojects_2011_final
Ccresa officeof innovativeprojects_2011_finalCcresa officeof innovativeprojects_2011_final
Ccresa officeof innovativeprojects_2011_final
 
Postdoctoral Research @ NAWCWD
Postdoctoral Research @ NAWCWDPostdoctoral Research @ NAWCWD
Postdoctoral Research @ NAWCWD
 
Social Emotional Health: A Guide for Families with Children Birth to Age 8
Social Emotional Health: A Guide for Families with Children Birth to Age 8Social Emotional Health: A Guide for Families with Children Birth to Age 8
Social Emotional Health: A Guide for Families with Children Birth to Age 8
 
Miaeyc early childhood_march_2011
Miaeyc early childhood_march_2011Miaeyc early childhood_march_2011
Miaeyc early childhood_march_2011
 
Historia De Engormix
Historia De EngormixHistoria De Engormix
Historia De Engormix
 
Historia De Engormix
Historia De EngormixHistoria De Engormix
Historia De Engormix
 
Hp dl380 g7测试结果报告 - 20100823
Hp dl380 g7测试结果报告 - 20100823Hp dl380 g7测试结果报告 - 20100823
Hp dl380 g7测试结果报告 - 20100823
 
Watch Me Grow 2009-2010 Calendar
Watch Me Grow 2009-2010 CalendarWatch Me Grow 2009-2010 Calendar
Watch Me Grow 2009-2010 Calendar
 
ibbackup vs mysqldump对比测试 - 20080718
ibbackup vs mysqldump对比测试 - 20080718ibbackup vs mysqldump对比测试 - 20080718
ibbackup vs mysqldump对比测试 - 20080718
 
Bpclfinalbrochure 110721130723-phpapp02
Bpclfinalbrochure 110721130723-phpapp02Bpclfinalbrochure 110721130723-phpapp02
Bpclfinalbrochure 110721130723-phpapp02
 
Fn Slide May2009
Fn Slide May2009Fn Slide May2009
Fn Slide May2009
 
Red Flags of Development Birth to 48 Months
Red Flags of Development Birth to 48 MonthsRed Flags of Development Birth to 48 Months
Red Flags of Development Birth to 48 Months
 
Ús ètic de la informació. Citacions i bibliografia
Ús ètic de la informació. Citacions i bibliografiaÚs ètic de la informació. Citacions i bibliografia
Ús ètic de la informació. Citacions i bibliografia
 
Bunchculturedeck
BunchculturedeckBunchculturedeck
Bunchculturedeck
 
CreditRiskMonitor Brochure
CreditRiskMonitor BrochureCreditRiskMonitor Brochure
CreditRiskMonitor Brochure
 
Michigan's LICC Parent Handbook
Michigan's LICC Parent HandbookMichigan's LICC Parent Handbook
Michigan's LICC Parent Handbook
 
Mediator training
Mediator trainingMediator training
Mediator training
 
Prezentacja Foresight 16 06 09
Prezentacja Foresight 16 06 09Prezentacja Foresight 16 06 09
Prezentacja Foresight 16 06 09
 
White House Travel Bloggers Summit - U.S. Study Abroad
White House Travel Bloggers Summit - U.S. Study AbroadWhite House Travel Bloggers Summit - U.S. Study Abroad
White House Travel Bloggers Summit - U.S. Study Abroad
 
Rute Surabaya Bantul
Rute Surabaya BantulRute Surabaya Bantul
Rute Surabaya Bantul
 

Similar to 服务器基准测试-叶金荣@CYOU-20121130

04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化littlecong
 
Osc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOsc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOpenSourceCamp
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUGYingSiang Geng
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践zhliji2
 
twMVC#19 | opserver監控服務的解決
twMVC#19 | opserver監控服務的解決twMVC#19 | opserver監控服務的解決
twMVC#19 | opserver監控服務的解決twMVC
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 
Lvs在大规模网络环境下的应用pukong
Lvs在大规模网络环境下的应用pukongLvs在大规模网络环境下的应用pukong
Lvs在大规模网络环境下的应用pukongMichael Zhang
 
数据库极限性能测试
数据库极限性能测试数据库极限性能测试
数据库极限性能测试helbreathszw
 
2011 06-12-lamp-mysql-顾春江
2011 06-12-lamp-mysql-顾春江2011 06-12-lamp-mysql-顾春江
2011 06-12-lamp-mysql-顾春江thinkinlamp
 
2011 06-12-lamp-mysql
2011 06-12-lamp-mysql2011 06-12-lamp-mysql
2011 06-12-lamp-mysqlpwesh
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops琛琳 饶
 
My sql 5.6新特性深入剖析——innodb引擎
My sql 5.6新特性深入剖析——innodb引擎My sql 5.6新特性深入剖析——innodb引擎
My sql 5.6新特性深入剖析——innodb引擎frogd
 
Hp刀片机测试
Hp刀片机测试Hp刀片机测试
Hp刀片机测试alex1x
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 Lheima911
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器Leyi (Kamus) Zhang
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化丁 宇
 
MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB
 
My sql 5.5 innodb xtradb 性能诊断与优化
My sql 5.5 innodb xtradb 性能诊断与优化My sql 5.5 innodb xtradb 性能诊断与优化
My sql 5.5 innodb xtradb 性能诊断与优化YUCHENG HU
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 Renaun Erickson
 

Similar to 服务器基准测试-叶金荣@CYOU-20121130 (20)

04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化
 
Osc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOsc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresql
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践
 
twMVC#19 | opserver監控服務的解決
twMVC#19 | opserver監控服務的解決twMVC#19 | opserver監控服務的解決
twMVC#19 | opserver監控服務的解決
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 
Lvs在大规模网络环境下的应用pukong
Lvs在大规模网络环境下的应用pukongLvs在大规模网络环境下的应用pukong
Lvs在大规模网络环境下的应用pukong
 
数据库极限性能测试
数据库极限性能测试数据库极限性能测试
数据库极限性能测试
 
2011 06-12-lamp-mysql-顾春江
2011 06-12-lamp-mysql-顾春江2011 06-12-lamp-mysql-顾春江
2011 06-12-lamp-mysql-顾春江
 
2011 06-12-lamp-mysql
2011 06-12-lamp-mysql2011 06-12-lamp-mysql
2011 06-12-lamp-mysql
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops
 
My sql 5.6新特性深入剖析——innodb引擎
My sql 5.6新特性深入剖析——innodb引擎My sql 5.6新特性深入剖析——innodb引擎
My sql 5.6新特性深入剖析——innodb引擎
 
Hp刀片机测试
Hp刀片机测试Hp刀片机测试
Hp刀片机测试
 
Install Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 LInstall Oracle11g For Aix 5 L
Install Oracle11g For Aix 5 L
 
数据库性能诊断的七种武器
数据库性能诊断的七种武器数据库性能诊断的七种武器
数据库性能诊断的七种武器
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化
 
MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB at Qihoo 360
MongoDB at Qihoo 360
 
My sql 5.5 innodb xtradb 性能诊断与优化
My sql 5.5 innodb xtradb 性能诊断与优化My sql 5.5 innodb xtradb 性能诊断与优化
My sql 5.5 innodb xtradb 性能诊断与优化
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接
 

More from Jinrong Ye

为什么学习MySQL-20220530.pdf
为什么学习MySQL-20220530.pdf为什么学习MySQL-20220530.pdf
为什么学习MySQL-20220530.pdfJinrong Ye
 
程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍Jinrong Ye
 
我们的MySQL
我们的MySQL我们的MySQL
我们的MySQLJinrong Ye
 
MySQL数据库设计、优化
MySQL数据库设计、优化MySQL数据库设计、优化
MySQL数据库设计、优化Jinrong Ye
 
Tpcc mysql使用手册 - 20120329
Tpcc mysql使用手册 - 20120329Tpcc mysql使用手册 - 20120329
Tpcc mysql使用手册 - 20120329Jinrong Ye
 
MySQL 6.0 下的cluster + replicate - 20080220
MySQL 6.0 下的cluster + replicate - 20080220MySQL 6.0 下的cluster + replicate - 20080220
MySQL 6.0 下的cluster + replicate - 20080220Jinrong Ye
 
InnoDB引擎数据表压缩特性测试 - 20120329
InnoDB引擎数据表压缩特性测试 - 20120329InnoDB引擎数据表压缩特性测试 - 20120329
InnoDB引擎数据表压缩特性测试 - 20120329Jinrong Ye
 
Xtrabackup工具使用简介 - 20110427
Xtrabackup工具使用简介 - 20110427Xtrabackup工具使用简介 - 20110427
Xtrabackup工具使用简介 - 20110427Jinrong Ye
 
Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Jinrong Ye
 
mysql cluster测试记录 - 20120905
mysql cluster测试记录 - 20120905mysql cluster测试记录 - 20120905
mysql cluster测试记录 - 20120905Jinrong Ye
 
dell服务器raid冷迁移方法
dell服务器raid冷迁移方法dell服务器raid冷迁移方法
dell服务器raid冷迁移方法Jinrong Ye
 

More from Jinrong Ye (11)

为什么学习MySQL-20220530.pdf
为什么学习MySQL-20220530.pdf为什么学习MySQL-20220530.pdf
为什么学习MySQL-20220530.pdf
 
程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍
 
我们的MySQL
我们的MySQL我们的MySQL
我们的MySQL
 
MySQL数据库设计、优化
MySQL数据库设计、优化MySQL数据库设计、优化
MySQL数据库设计、优化
 
Tpcc mysql使用手册 - 20120329
Tpcc mysql使用手册 - 20120329Tpcc mysql使用手册 - 20120329
Tpcc mysql使用手册 - 20120329
 
MySQL 6.0 下的cluster + replicate - 20080220
MySQL 6.0 下的cluster + replicate - 20080220MySQL 6.0 下的cluster + replicate - 20080220
MySQL 6.0 下的cluster + replicate - 20080220
 
InnoDB引擎数据表压缩特性测试 - 20120329
InnoDB引擎数据表压缩特性测试 - 20120329InnoDB引擎数据表压缩特性测试 - 20120329
InnoDB引擎数据表压缩特性测试 - 20120329
 
Xtrabackup工具使用简介 - 20110427
Xtrabackup工具使用简介 - 20110427Xtrabackup工具使用简介 - 20110427
Xtrabackup工具使用简介 - 20110427
 
Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422Handler socket测试报告 - 20110422
Handler socket测试报告 - 20110422
 
mysql cluster测试记录 - 20120905
mysql cluster测试记录 - 20120905mysql cluster测试记录 - 20120905
mysql cluster测试记录 - 20120905
 
dell服务器raid冷迁移方法
dell服务器raid冷迁移方法dell服务器raid冷迁移方法
dell服务器raid冷迁移方法
 

服务器基准测试-叶金荣@CYOU-20121130

  • 1. 服务器基准测试 叶金荣 @yejinrong http://imysql.com 2012-11-30
  • 2. 写在最前面 • 非专业人士整理,有任何不正确的地方请指正 • 测试结果表格模板中的数据不准确,可以无视
  • 3. 概要 服务器是业务的基础单元,提供线上业务服务,存储 着重要数据,如何保证服务器高性能、高可靠运行非常关键。 对于服务器硬件一般关注几点: – 和老一代产品对比,改变或优化的地方 – 和同档次其他厂商产品对比,优劣之处 – 服务器可靠性、性能表现 – 设计特点、功耗 了解上述几点后,针对服务器的测试也就有了相应的 方案。
  • 4. 大纲 • 技术指标对比 • 测试工具 • 性能基准测试 • 可靠性测试 – 模拟意外事件 – 长期极限高压 – 模拟恶劣环境 • 测试报告 • 附件下载
  • 5. 技术指标对比 技术指标 DELL PE R720 DELL PE R710 机型 2U PC Server 2U PC Server CPU Xeon E5-2620(6核,12线程,Xeon E5620(4核,8线程, 2.0GHz, L3 15MB) * 2 2.4GHz,L3 12MB) * 2 总线 QPI 6.4GT/s QPI 5.86GT/s 主板芯片组 Intel C600 Intel 5520 内存 32G(4G * 8,ECC DDR3) 32G(4G * 8,DDR3) 阵列卡 PERC H710,512MB, PERC H700,512MB, BBU(FW:12.10.1-0001), BBU(FW:12.10.1-0001), RAID 1+0 RAID 1+0 硬盘 15K RPM 300G SAS * 8 15K RPM 300G SAS * 6 网卡 Intel 4端口 1GbE Broadcom 4端口 1GbE 电源 495瓦,冗电 500瓦,冗电
  • 6. 性能基准测试 – 关注点 • 何为基准 – 通过设计科学的测试方法、测试工具和测试系统,实现对一类测 试对象的某项性能指标进行定量的和可对比的测试(百度百科) • 重点关注 – CPU:计算,尤其是浮点运算 – 内存:带宽、吞吐 – 磁盘:IOPS、响应时间 – 数据库:OLTP、OLAP、响应时间 • 注意事项 – 持续压力过大无法反应服务器真实最优表现 – 持续压力时间过短亦无法反应服务器真实最优表现
  • 7. 性能基准测试 – 关注点 • CPU – 简单素数计算、复杂浮点计算 – thread分配 – mutex性能 • 关注信息 – 计算能力 – 多线程并发 – mutex管理 常地,随着计算机工艺的发展,大部分应用下,CPU几乎不再成 为瓶颈。。一般只关注不同品牌厂商、不同工艺、不同主频下的不 同表现,其他情况下,无需太多关注。
  • 8. 性能基准测试 – 关注点 • 内存 – 总带宽 – 读写效率 – CPU对内存的管理分配 • 关注信息 – 读写效率 通常,内存越大越好,可有效减少磁盘物理IO。一般只关注不 同品牌厂商、不同工艺、不同主频下的不同表现,其他情况下,无 需太多关注。
  • 9. 性能基准测试 – 关注点 • 磁盘IOPS – 读写效率 – 随机写性能 • 关注信息 – 不同内核、文件系统下的IOPS – 不同阵列级别、条带场景下的IOPS – 和内存结合时的IOPS性能拐点 – 达到同样IOPS情景下,IO利用率差别 – 跑满IO以及IO压力较轻情景下,各自IO利用率差别 – sar -d:tps、svctm、%util 通常,磁盘物理IO是这个计算机体系里最容易成为瓶颈的环节, 也是最难优化的,因此最需要关注。随着SSD、Fusion-IO出现,磁 盘IOPS获得了巨大提升,和内存相比,差距在不断缩小。
  • 10. 性能基准测试 – 关注点 • OLTP/OLAP – TPS、QPS、 – 响应延迟/分析、吞吐效率 • 关注信息 – 不同内核、文件系统下的TPS – 不同阵列级别、条带场景下的TPS – 和内存结合时的TPS性能拐点 – 达到同样TPS情景下,IO负载差别 – TPS满负荷、低负荷情景下,各自IO利用率差别 – sar -d:tps、svctm、%util 通常,数据总量超过物理内存后,OLTP的TPS性能和磁盘IOPS 成正比关系。因此,只有不断提高内存,减少物理IO,并且不断提 升IOPS性能。
  • 11. 性能基准测试 – 关键因素 • 硬件 – CPU、内存、阵列卡(BBU、CACHE、条带、读写策略)、硬盘 • 系统 – 内核参数、文件系统、IO调度器 • 文件 – 块大小、访问模式 • 其他 – 网络环境对over lan请求测试影响大 – 每完成一轮测试后要净化环境 – 每轮测试一般至少持续1小时
  • 12. 测试工具 • sysbench – Primarily for MySQL OLTP benchmarking,By MySQL AB – cpu、threads、mutex、memory、fileio、oltp • iozone – filesystem benchmark tool • tpcc-mysql – Primarily for MySQL OLTP benchmarking,By Percona • tpch – Primarily for OLAP benchmarking • 其他 – OLTP:mysqlslap、sql-bench – IOPS:bonnie、orion、 iometer – 综合:stress
  • 13. 测试工具 - sysbench • 安装 – ./configure --with-mysql-includes=path --with-mysql- libs=path && make && make install • 支持其他数据库 – with-pgsql – with-oracle • 运行 – sysbench --test=[mode] [other_options] prepare – sysbench --test=[mode] [other_options] run – sysbench --test=[mode] [other_options] cleanup
  • 14. 测试工具 - sysbench • 通用基准 – 最大请求数:5,000,000 – 并发线程数:8 ~ 512 • 基准 - cpu – cpu-max-prime=500,000 • 基准 - threads – thread-yields=5,000,000 – thread-locks=8~512
  • 15. 测试工具 - sysbench • 基准 - mutex – mutex-num=5,000,000 – mutex-loops=100,000 – mutex-locks=100,000 • 基准 - fileio – file-num=100 – file-total-size=物理内存 ~ 物理内存的8倍 – mode=seqwr/seqrewr/seqrd/rndrd/rndwr/rndrw
  • 16. 测试工具 - sysbench • 基准 - memory – mode=complex – engine=innodb – oltp-table-size=100,000,000 • 基准 – OLTP – mode=complex – engine=innodb – oltp-table-size=100,000,000
  • 17. 测试工具 - sysbench • fileio mode seqwr 顺序写 seqrewr 顺序重写 seqrd 顺序读 rndrd 随机读 rndwr 随机写 rndrw 随机读写 • OLTP mode nontrx 无事务 simple 简单请求 complex 复杂请求,有事务
  • 18. 测试工具 - iozone • 安装 – make linux-AMD64 • 运行 – iozone -R -E -s 3200M -l 10 -r 4k
  • 19. 测试工具 - iozone • 基准 - fileio – file-block-size=4k 8k 16k 32k 64k – file-num=1 2 4 8 16 – file-size=1G 2G 4G 8G 16G – mode=seqwr/seqrewr/seqrd/rndrd/rndwr/rndrw
  • 20. 测试工具 - tpcc mysql • 安装 – 下载 bzr branch lp:~percona-dev/perconatools/tpcc-mysql – 直接make即可 – create_table.sql - 创建数据表 – add_fkey_idx.sql – 创建索引及外键 • 初始化加载数据 – tpcc_load db_host db_name db_user db_passwd db_warehouse_num – 例如:tpcc_load localhost tpcc1000 user passwd 1000 • 运行OLTP测试 – ./tpcc_start -h localhost -d tpcc1000 -u root -p ' xx' -w 1000 -c 32 -r 120 -l 3600 -f ./tpcc_mysql_20120314
  • 21. 测试工具 - tpcc mysql • 基准 - OLTP – warehouse = 1000 – max connection = 8 ~ 512 – warm up = 120(s) – run time/duration = 3600(s)
  • 22. 测试工具 – tpch • 安装 – cp makefile.suite makefile – 编辑 makefile 文件 CC = gcc DATABASE = MYSQL MACHINE = LINUX WORKLOAD = TPCH – 编辑tpcd.h,增加宏定义 #ifdef MYSQL #define GEN_QUERY_PLAN "" #define START_TRAN "START TRANSACTION" #define END_TRAN "COMMIT" #define SET_OUTPUT "" #define SET_ROWCOUNT "limit %d;n" #define SET_DBASE "use %s;n" #endif
  • 23. 测试工具 – tpch • 初始化 – 初始化测试表数据: ./dbgen -s 100 – 生成测试数据:mysql -f tpch < dss.ddl – 默认的初始化模式无主键、无索引 – LOAD DATA INFILE导入数据 – 注意max_binlog_cache_size限制,需要切分文件导入 – 执行修改主键/外键/额外索引脚本 – 数据表名全部改成小写,适应TPC-H测试SQL脚本 – 运行qgen生成测试SQL – 修改部分SQL语句 – 拆分完成测试SQL脚本成23个测试SQL • 运行 – 执行23个测试脚本,记录运行时长
  • 24. 测试工具 – tpch • 基准 - tpch – warehouse = 100 – 单进程 – tpch侧重OLAP模型,而MySQL并不适合OLAP,因此 warehouse设定较小
  • 25. 测试报告 • cpu - sysbench
  • 29. 测试报告 • oltp - sysbench
  • 32. 可靠性测试 • 模拟意外事件 – 断电(硬件冷重启) – RESET(硬件热重启) – 阵列卡掉线 – 磁盘掉线 – REBOOT(系统重启) – 正常关闭服务(kill -TERM) – 异常关闭服务(kill -9) – 磁盘空间满 – 删除文件 – 破坏性修改已打开文件 – …
  • 33. 可靠性测试 • 长期极限高压 – 持续数小时、数天、数周运行高负载计算、IO任务 – 考验服务器在高压下的性能波动情况 – 考验硬件设备在高压下的稳定性表现 • 模拟恶劣环境 – 供电不稳 – 通风冷却不好 – 湿气大、灰尘多
  • 34. 附件 • 整合sysbench测试脚本 [下载] • 整合iozone测试脚本 [下载] • 整合tpcc-mysql测试脚本 [下载] • 整合tpch测试脚本 [下载] • 汇总下载 [下载] • 测试结果表格模板 [下载]