溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Docker如何部署及使用壓測(cè)神器sysbench

發(fā)布時(shí)間:2022-08-04 10:42:50 來(lái)源:億速云 閱讀:254 作者:iii 欄目:開(kāi)發(fā)技術(shù)

本篇內(nèi)容主要講解“Docker如何部署及使用壓測(cè)神器sysbench”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Docker如何部署及使用壓測(cè)神器sysbench”吧!

    前言

    sysbench是一款開(kāi)源的多線程性能測(cè)試工具,可以執(zhí)行CPU/內(nèi)存/線程/IO/數(shù)據(jù)庫(kù)等方面的性能測(cè)試

    ?? 1. sysbench簡(jiǎn)介

    ? 1.1 sysbench能做什么

    新業(yè)務(wù)上線的時(shí)候通常需要對(duì)數(shù)據(jù)庫(kù)性能進(jìn)行壓力測(cè)試,以確認(rèn)是否滿足需要,今天簡(jiǎn)單介紹下sysbench的用法:
    1.sysbench 是一個(gè)開(kāi)源跨平臺(tái)的多線程性能測(cè)試工具。
    2.可以用來(lái)進(jìn)行 CPU、內(nèi)存、磁盤IO、線程、數(shù)據(jù)庫(kù)的性能測(cè)試。
    3.目前支持的數(shù)據(jù)庫(kù)是 MySQL、Oracle 和 PostgreSQL。
    sysbench 支持以下幾種測(cè)試模式:
    1、CPU 運(yùn)算性能
    2、磁盤 IO 性能
    3、調(diào)度程序性能
    4、內(nèi)存分配及傳輸速度
    5、POSIX 線程性能–互斥基準(zhǔn)測(cè)試
    6、數(shù)據(jù)庫(kù)性能(OLTP 基準(zhǔn)測(cè)試)

    Docker如何部署及使用壓測(cè)神器sysbench

    ? 1.2 壓力測(cè)試的指標(biāo)

    QPS(Queries Per Second)就是每秒的查詢數(shù),對(duì)數(shù)據(jù)庫(kù)而言就是數(shù)據(jù)庫(kù)每秒執(zhí)行的 SQL 數(shù)
    (含 insert、select、update、delete 等)。
    TPS(Transactions Per Second)就是每秒的事務(wù)數(shù)。
    TPS 對(duì)于數(shù)據(jù)庫(kù)而言就是數(shù)據(jù)庫(kù)每秒執(zhí)行的事務(wù)數(shù),以 commit 成功次數(shù)為準(zhǔn)。
    并發(fā)數(shù):系統(tǒng)同時(shí)處理的request數(shù)(事務(wù)數(shù))
    響應(yīng)時(shí)間:一般取平均響應(yīng)時(shí)間

    ? 1.3 常見(jiàn)的壓測(cè)工具

    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 服務(wù)器申請(qǐng)

    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如何部署及使用壓測(cè)神器sysbench

    ? 2.2 yum安裝

    ## DNS域名配置
    具體區(qū)別如下:114.114.114.114是國(guó)內(nèi)移動(dòng)、電信和聯(lián)通通用的DNS,解析成功率相對(duì)來(lái)說(shuō)更高,
    國(guó)內(nèi)用戶使用的比較多,速度相對(duì)快、穩(wěn)定,是國(guó)內(nèi)用戶上網(wǎng)常用的DNS。
    8.8.8.8是GOOGLE公司提供的DNS,該地址是全球通用的,相對(duì)來(lái)說(shuō),更適合國(guó)外以及訪問(wèn)國(guó)外網(wǎng)站的用戶使用
    [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如何部署及使用壓測(cè)神器sysbench

    Docker如何部署及使用壓測(cè)神器sysbench

    ?? 3.測(cè)試 CPU

    對(duì) CPU 的性能測(cè)試通常有:1.質(zhì)數(shù)計(jì)算;2 圓周率計(jì)算;
    sysbench 使用的就是通過(guò)質(zhì)數(shù)相加的測(cè)試。對(duì) CPU 測(cè)試直接運(yùn)行 run 即可。
    –20 個(gè)線程執(zhí)行 1 萬(wàn)次請(qǐng)求,每個(gè)請(qǐng)求執(zhí)行質(zhì)數(shù)相加到 20000
    sysbench --threads=20 --events=10000 cpu --cpu-max-prime=20000 run

    Docker如何部署及使用壓測(cè)神器sysbench

    ?? 4.測(cè)試磁盤 IO

    IO 的測(cè)試主要用于測(cè)試 IO 的負(fù)載性能。主要測(cè)試選項(xiàng)為–file-test-mode。還有可以關(guān)注的參數(shù)包括–file-block-size、–file-io-mode、–file-fsync-
    freq 、–file-rw-ratio 。對(duì)比兩臺(tái)服務(wù)器的 io 性能,需要跑相同的線程。
    其中–file-test-mode 的選項(xiàng)如下:
    seqwr:順序?qū)懭?br/>seqrewr:順序重寫
    seqrd:順序讀取
    rndrd:隨機(jī)讀取
    rndwr:隨機(jī)寫入
    rndrw:混合隨機(jī)讀寫

    ## 生成壓測(cè)文件
    sysbench fileio --threads=16 --file-total-size=10G --file-test-mode=rndrw prepare
    注意:每次會(huì)生成128個(gè)文件
    10737418240 bytes written in 199.82 seconds (51.25 MiB/sec).

    壓測(cè)性能
    sysbench fileio --threads=16 --file-total-size=10G --file-test-mode=rndrw run

    Docker如何部署及使用壓測(cè)神器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.測(cè)試內(nèi)存

    測(cè)試 8K 順序分配:
    sysbench --threads=12 --events=10000 memory --memory-block-size=8K --memory-total-size=100G --memory-access-mode=seq run

    Docker如何部署及使用壓測(cè)神器sysbench

    測(cè)試 8K 隨機(jī)分配:
    sysbench --threads=12 --events=10000 memory --memory-block-size=8K --memory-total-size=100G --memory-access-mode=rnd run

    Docker如何部署及使用壓測(cè)神器sysbench

    到此,相信大家對(duì)“Docker如何部署及使用壓測(cè)神器sysbench”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

    向AI問(wèn)一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI