温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker如何部署及使用压测神器sysbench

发布时间:2022-08-04 10:42:50 来源:亿速云 阅读:255 作者:iii 栏目:开发技术

本篇内容主要讲解“Docker如何部署及使用压测神器sysbench”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker如何部署及使用压测神器sysbench”吧!

    前言

    sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试

    ⛳️ 1. sysbench简介

    ✨ 1.1 sysbench能做什么

    新业务上线的时候通常需要对数据库性能进行压力测试,以确认是否满足需要,今天简单介绍下sysbench的用法:
    1.sysbench 是一个开源跨平台的多线程性能测试工具。
    2.可以用来进行 CPU、内存、磁盘IO、线程、数据库的性能测试。
    3.目前支持的数据库是 MySQL、Oracle 和 PostgreSQL。
    sysbench 支持以下几种测试模式:
    1、CPU 运算性能
    2、磁盘 IO 性能
    3、调度程序性能
    4、内存分配及传输速度
    5、POSIX 线程性能–互斥基准测试
    6、数据库性能(OLTP 基准测试)

    Docker如何部署及使用压测神器sysbench

    ✨ 1.2 压力测试的指标

    QPS(Queries Per Second)就是每秒的查询数,对数据库而言就是数据库每秒执行的 SQL 数
    (含 insert、select、update、delete 等)。
    TPS(Transactions Per Second)就是每秒的事务数。
    TPS 对于数据库而言就是数据库每秒执行的事务数,以 commit 成功次数为准。
    并发数:系统同时处理的request数(事务数)
    响应时间:一般取平均响应时间

    ✨ 1.3 常见的压测工具

    Sysbench: MySQL、 PostgreSQL、Oracle
    HammerDB: MySQL、 Oracle 、 PostgreSQL、 SQL Server、DB2、TimesTen、MariaDB、Postgres Plus Advanced Server、Greenplum、Redis、Amazon Aurora、
    Redshift
    Swingbench:Oracle

    ⛳️ 2.容器安装

    ✨ 2.1 服务器申请

    docker rm -f sysbench
    docker run -d --name jemsysbench -h jemsysbench \
    -p 3222:22 -p 33389:3389 \
    --privileged=true centos:7.6.1810 \
    /usr/sbin/init
    [root@jeames ~]# docker exec -it jemsysbench bash

    Docker如何部署及使用压测神器sysbench

    ✨ 2.2 yum安装

    ## DNS域名配置
    具体区别如下:114.114.114.114是国内移动、电信和联通通用的DNS,解析成功率相对来说更高,
    国内用户使用的比较多,速度相对快、稳定,是国内用户上网常用的DNS。
    8.8.8.8是GOOGLE公司提供的DNS,该地址是全球通用的,相对来说,更适合国外以及访问国外网站的用户使用
    [root@jemsysbench /]# more /etc/resolv.conf 
    # Generated by NetworkManager
    nameserver 114.114.114.114
    nameserver 8.8.8.8
    [root@jemsysbench /]# yum install sudo
    [root@jemsysbench /]# curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
    [root@jemsysbench /]# sudo yum -y install sysbench
    [root@jemsysbench /]# sysbench --version
    sysbench 1.0.20
    [root@jemsysbench /]# sysbench --help

    Docker如何部署及使用压测神器sysbench

    Docker如何部署及使用压测神器sysbench

    ⛳️ 3.测试 CPU

    对 CPU 的性能测试通常有:1.质数计算;2 圆周率计算;
    sysbench 使用的就是通过质数相加的测试。对 CPU 测试直接运行 run 即可。
    –20 个线程执行 1 万次请求,每个请求执行质数相加到 20000
    sysbench --threads=20 --events=10000 cpu --cpu-max-prime=20000 run

    Docker如何部署及使用压测神器sysbench

    ⛳️ 4.测试磁盘 IO

    IO 的测试主要用于测试 IO 的负载性能。主要测试选项为–file-test-mode。还有可以关注的参数包括–file-block-size、–file-io-mode、–file-fsync-
    freq 、–file-rw-ratio 。对比两台服务器的 io 性能,需要跑相同的线程。
    其中–file-test-mode 的选项如下:
    seqwr:顺序写入
    seqrewr:顺序重写
    seqrd:顺序读取
    rndrd:随机读取
    rndwr:随机写入
    rndrw:混合随机读写

    ## 生成压测文件
    sysbench fileio --threads=16 --file-total-size=10G --file-test-mode=rndrw prepare
    注意:每次会生成128个文件
    10737418240 bytes written in 199.82 seconds (51.25 MiB/sec).

    压测性能
    sysbench fileio --threads=16 --file-total-size=10G --file-test-mode=rndrw run

    Docker如何部署及使用压测神器sysbench

    清理生成的文件
    sysbench fileio --threads=16 --file-total-size=10G --file-test-mode=rndrw cleanup
    sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)

    ⛳️ 4.测试内存

    测试 8K 顺序分配:
    sysbench --threads=12 --events=10000 memory --memory-block-size=8K --memory-total-size=100G --memory-access-mode=seq run

    Docker如何部署及使用压测神器sysbench

    测试 8K 随机分配:
    sysbench --threads=12 --events=10000 memory --memory-block-size=8K --memory-total-size=100G --memory-access-mode=rnd run

    Docker如何部署及使用压测神器sysbench

    到此,相信大家对“Docker如何部署及使用压测神器sysbench”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI