国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【工具/性能】開(kāi)源的性能測(cè)試工具sysbench

這篇具有很好參考價(jià)值的文章主要介紹了【工具/性能】開(kāi)源的性能測(cè)試工具sysbench。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

概述

sysbensh是一個(gè)非常通用的benchmark工具,其提供多種方面的測(cè)試:

  1. cpu :提供一個(gè)簡(jiǎn)單的cpu benchmark測(cè)試
  2. fileio:文件磁盤(pán)io的benchmark測(cè)試
  3. memory:內(nèi)存訪問(wèn) benchmark測(cè)試
  4. thread:線程調(diào)度 benchmark測(cè)試
  5. mutex:POSIX的鎖 benchmark測(cè)試
  6. OLTP:數(shù)據(jù)庫(kù) benchmark測(cè)試,支持MySQL,Pgsql

安裝

默認(rèn)支持MySQL,如果需要測(cè)試Oracle/PostgreSQL,則在configure時(shí)需要加上–with-oracle或者–with-pgsql參數(shù).

1.安裝環(huán)境

CentOS release 6.3 (Final)

MySQL 5.6.13

MySQL_HOME=/usr/local/mysql/

Sysbench 0.4.12

2.下載安裝包

# wget http://sourceforge.net/projects/sysbench/sysbench-0.4.12.tar.gz

3.編譯安裝

#  tar –zxvf sysbench-0.4.12.tar.gz

進(jìn)入解壓縮包sysbench-0.4.12,并執(zhí)行腳本autogen.sh

# cd sysbench-0.4.12

# ./autogen.sh

關(guān)鍵的三步:configure && make && make install

首先是./configure命令,sysbench默認(rèn)是支持MySQL的benchmarking的,如果不加任何選項(xiàng)則要求保證MySQL的安裝路徑都是默認(rèn)的標(biāo)準(zhǔn)路徑,headfile位于/usr/include目錄下,libraries位于/usr/lib/目錄下。因?yàn)槲业腗ySQL是源碼編譯安裝的,安裝路徑是放在/usr/local/mysql下,所以這里要添加相應(yīng)的選項(xiàng)命令:
# ./configure --prefix=/usr/local/sysbench --with-mysql=/usr/local/mysql \


--with-mysql-includes=/usr/local/mysql/include/mysql/ \

--with-mysql-libs=/usr/local/mysql/lib/mysql/

注意:這里在編譯時(shí)要將路徑寫(xiě)到最后的include/mysql及l(fā)ib/mysql,如下所示:

–with-mysql-includes=/usr/local/mysql/include/mysql/

--with-mysql-libs=/usr/local/mysql/lib/mysql/

因?yàn)榫W(wǎng)上好多資料都沒(méi)有提到這一層,在編譯時(shí)總是編譯不過(guò)去,這里浪費(fèi)了好多精力。

接下來(lái)執(zhí)行如下命令:
# make && make install

4.yum安裝

如果覺(jué)得源碼安裝麻煩,也可以采用yum安裝,操作如下:

# yum install -y sysbench

使用

為了更加熟悉使用sysbench,我們需要熟悉一些通用的 options參數(shù)

--threads=N  線程數(shù)目,默認(rèn)使用1
--events=N   默認(rèn)為0
--time=N     默認(rèn)為0
--forced-shutdown=STRING  默認(rèn)為‘off’,另一個(gè)選項(xiàng)為‘on’
--thread-stack-size=SIZE  默認(rèn)為64K
--rate=N     平均transactions率,默認(rèn)為0,不限制
--report-interval=N  周期性(periodically)匯報(bào)統(tǒng)計(jì)信息,單位seconds,默認(rèn)為0,表示disable interval report
--debug[=on|off]  print debug 信息,默認(rèn)為off

還有一些其他的參數(shù),因?yàn)楹苌偈褂盟芯筒唤榻B了。

語(yǔ)法表達(dá)式

sysbench [options]... [testname] [command] 

其中testname,可以是fileio,memory等,或者是一個(gè)lua script或者是lua script的path。

command表示prepare,run,cleanup或者h(yuǎn)elp

具體詳細(xì)的每一個(gè)options參數(shù)的含義,參考github。

測(cè)試 fileio


sysbench --test=fileio help

參數(shù)詳解:

--file-num=N          代表生成測(cè)試文件的數(shù)量,默認(rèn)為128。

--file-block-size=N      測(cè)試時(shí)所使用文件塊的大小,如果想磁盤(pán)針對(duì)innodb存儲(chǔ)引擎進(jìn)行測(cè)試,可以將其設(shè)置為16384,即innodb存儲(chǔ)引擎頁(yè)的大小。默認(rèn)為16384。

--file-total-size=SIZE     創(chuàng)建測(cè)試文件的總大小,默認(rèn)為2G大小。

--file-test-mode=STRING 文件測(cè)試模式,包含:seqwr(順序?qū)?span id="n5n3t3z"    class="token punctuation">), seqrewr(順序讀寫(xiě)), seqrd(順序讀), rndrd(隨機(jī)讀), rndwr(隨機(jī)寫(xiě)), rndrw(隨機(jī)讀寫(xiě))。

--file-io-mode=STRING   文件操作的模式,sync(同步),async(異步),fastmmap(快速mmap),slowmmap(慢速mmap),默認(rèn)為sync同步模式。

--file-async-backlog=N   對(duì)應(yīng)每個(gè)線程隊(duì)列的異步操作數(shù),默認(rèn)為128。

--file-extra-flags=STRING 打開(kāi)文件時(shí)的選項(xiàng),這是與API相關(guān)的參數(shù)。

--file-fsync-freq=N      執(zhí)行fsync()函數(shù)的頻率。fsync主要是同步磁盤(pán)文件,因?yàn)榭赡苡邢到y(tǒng)和磁盤(pán)緩沖的關(guān)系。 0代表不使用fsync函數(shù)。默認(rèn)值為100。

--file-fsync-all=[on|off]  每執(zhí)行完一次寫(xiě)操作,就執(zhí)行一次fsync。默認(rèn)為off。

--file-fsync-end=[on|off] 在測(cè)試結(jié)束時(shí)執(zhí)行fsync函數(shù)。默認(rèn)為on。

--file-fsync-mode=STRING文件同步函數(shù)的選擇,同樣是和API相關(guān)的參數(shù),由于多個(gè)操作系統(tǒng)對(duì)于fdatasync支持不同,因此不建議使用fdatasync。默認(rèn)為fsync。

--file-merged-requests=N 大多情況下,合并可能的IO的請(qǐng)求數(shù),默認(rèn)為0。

--file-rw-ratio=N         測(cè)試時(shí)的讀寫(xiě)比例,默認(rèn)時(shí)為1.5,即可3:2

測(cè)試 CPU


sysbench --test=cpu help

參數(shù)詳解:

  --cpu-max-prime=N      用來(lái)選項(xiàng)指定最大的素?cái)?shù),具體參數(shù)可以根據(jù)CPU的性能來(lái)設(shè)置,默認(rèn)為10000

測(cè)試 memory


sysbench --test=memory help

參數(shù)詳解:

  --memory-block-size=SIZE      測(cè)試內(nèi)存塊的大小,默認(rèn)為1K

  --memory-total-size=SIZE       數(shù)據(jù)傳輸?shù)目偞笮?,默認(rèn)為100G

  --memory-scope=STRING       內(nèi)存訪問(wèn)的范圍,包括全局和本地范圍,默認(rèn)為global

  --memory-hugetlb=[on|off]     是否從HugeTLB池分配內(nèi)存的開(kāi)關(guān),默認(rèn)為off

  --memory-oper=STRING        內(nèi)存操作的類型,包括read, write, none,默認(rèn)為write

  --memory-access-mode=STRING 內(nèi)存訪問(wèn)模式,包括seq,rnd兩種模式,默認(rèn)為seq

測(cè)試 threads


sysbench --test-threads help

參數(shù)詳解: 

  --thread-yields=N      指定每個(gè)請(qǐng)求的壓力,默認(rèn)為1000

  --thread-locks=N       指定每個(gè)線程的鎖數(shù)量,默認(rèn)為8

測(cè)試 mutex


sysbench --test=mutex help

參數(shù)詳解:

  --mutex-num=N    數(shù)組互斥的總大小。默認(rèn)是4096

  --mutex-locks=N    每個(gè)線程互斥鎖的數(shù)量。默認(rèn)是50000

  --mutex-loops=N    內(nèi)部互斥鎖的空循環(huán)數(shù)量。默認(rèn)是10000

測(cè)試 otlp


sysbench --test=otlp help

參數(shù)詳解:

  --oltp-test-mode=STRING    執(zhí)行模式{simple,complex(advanced transactional),nontrx(non-transactional),sp}。默認(rèn)是complex

  --oltp-reconnect-mode=STRING 重新連接模式{session(不使用重新連接。每個(gè)線程斷開(kāi)只在測(cè)試結(jié)束),transaction(在每次事務(wù)結(jié)束后重新連接),query(在每個(gè)SQL語(yǔ)句執(zhí)行完重新連接),random(對(duì)于每個(gè)事務(wù)隨機(jī)選擇以上重新連接模式)}。默認(rèn)是session

  --oltp-sp-name=STRING   存儲(chǔ)過(guò)程的名稱。默認(rèn)為空

  --oltp-read-only=[on|off]  只讀模式。Update,delete,insert語(yǔ)句不可執(zhí)行。默認(rèn)是off

  --oltp-skip-trx=[on|off]   省略begin/commit語(yǔ)句。默認(rèn)是off

  --oltp-range-size=N      查詢范圍。默認(rèn)是100

  --oltp-point-selects=N          number of point selects [10]

  --oltp-simple-ranges=N          number of simple ranges [1]

  --oltp-sum-ranges=N             number of sum ranges [1]

  --oltp-order-ranges=N           number of ordered ranges [1]

  --oltp-distinct-ranges=N        number of distinct ranges [1]

  --oltp-index-updates=N          number of index update [1]

  --oltp-non-index-updates=N      number of non-index updates [1]

  --oltp-nontrx-mode=STRING   查詢類型對(duì)于非事務(wù)執(zhí)行模式{select, update_key, update_nokey, insert, delete} [select]

  --oltp-auto-inc=[on|off]      AUTO_INCREMENT是否開(kāi)啟。默認(rèn)是on

  --oltp-connect-delay=N     在多少微秒后連接數(shù)據(jù)庫(kù)。默認(rèn)是10000

  --oltp-user-delay-min=N    每個(gè)請(qǐng)求最短等待時(shí)間。單位是ms。默認(rèn)是0

  --oltp-user-delay-max=N    每個(gè)請(qǐng)求最長(zhǎng)等待時(shí)間。單位是ms。默認(rèn)是0

  --oltp-table-name=STRING  測(cè)試時(shí)使用到的表名。默認(rèn)是sbtest

  --oltp-table-size=N         測(cè)試表的記錄數(shù)。默認(rèn)是10000

  --oltp-dist-type=STRING    分布的隨機(jī)數(shù){uniform(均勻分布),Gaussian(高斯分布),special(空間分布)}。默認(rèn)是special

  --oltp-dist-iter=N    產(chǎn)生數(shù)的迭代次數(shù)。默認(rèn)是12

  --oltp-dist-pct=N    值的百分比被視為'special' (for special distribution)。默認(rèn)是1

  --oltp-dist-res=N    ‘special’的百分比值。默認(rèn)是75

對(duì) MySQL 事務(wù)型 OLTP 的測(cè)試:

對(duì)于 MySQL 的 OLTP 測(cè)試,和 File 一樣,同樣需要經(jīng)歷 prepare,run,cleanup 三個(gè)階段。

prepare 準(zhǔn)備階段


prepare階段會(huì)在數(shù)據(jù)庫(kù)中產(chǎn)生一張指定行數(shù)的表,默認(rèn)表在sbtest架構(gòu)下,表名為sbtest(sysbench默認(rèn)生成表的存儲(chǔ)引擎為innodb),如創(chuàng)建一張8000萬(wàn)條記錄的表:

[root@db-master sysbench]# sysbench --test=oltp --oltp-table-size=80000000 --db-driver=mysql --mysql-socket=/data/mysqlsoft3307/mysql.sock --mysql-user=dba_manager  --mysql-password='111111' --mysql-db=test prepare


sysbench 0.4.12:  multi-threaded system evaluation benchmark

Creating table 'sbtest'...

Creating 10 records in table 'sbtest'...

run運(yùn)行測(cè)試


接下來(lái)對(duì)上面產(chǎn)生的表進(jìn)行 oltp 的測(cè)試:

[root@db-master sysbench]# sysbench --test=oltp --oltp-table-size=80000000 --oltp-read-only=off --init-rng=on --num-threads=16 
--max-requests=0 --oltp-dist-type=uniform --max-time=3600 --mysql-user=dba_manager  --mysql-password='111111' --db-driver=mysql 
--mysql-socket=/data/mysqlsoft3307/mysql.sock run > result.log

參數(shù)說(shuō)明:
 --max-time=3600 指定測(cè)試時(shí)長(zhǎng)為1小時(shí)
 --mysql-db=test 指定測(cè)試的數(shù)據(jù)庫(kù)名

[root@db-master sysbench]# cat  result.log 

sysbench 0.4.12:  multi-threaded system evaluation benchmark

Running the test with following options:

Number of threads: 16

Initializing random number generator from timer.

Doing OLTP test.

Running mixed OLTP test

Using Uniform distribution

Using "BEGIN" for starting transactions

Using auto_inc on the id column

Threads started!

Time limit exceeded, exiting...

(last message repeated 15 times)

Done.

OLTP test statistics:

    queries performed:

        read:                            137346874

        write:                           49052449

        other:                           19620980

        total:                           206020303

    transactions:                        9810489 (2725.13 per sec.)

    deadlocks:                           2      (0.00 per sec.)

    read/write requests:                 186399323 (51777.50 per sec.)

    other operations:                    19620980 (5450.26 per sec.)


Test execution summary:

    total time:                          3600.0060s

    total number of events:              9810489

    total time taken by event execution: 57542.1464

    per-request statistics:

         min:                                  3.00ms

         avg:                                  5.87ms

         max:                                212.09ms

         approx.  95 percentile:               8.44ms

Threads fairness:

    events (avg/stddev):           613155.5625/1486.47

    execution time (avg/stddev):   3596.3842/0.01

transactions代表測(cè)試結(jié)果的評(píng)判標(biāo)準(zhǔn)即TPS.
上述測(cè)試結(jié)果是 2725.13 per sec.

來(lái)源

Sysbench
sysbench基礎(chǔ)介紹
sysbench壓力測(cè)試工具簡(jiǎn)介文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-650930.html

到了這里,關(guān)于【工具/性能】開(kāi)源的性能測(cè)試工具sysbench的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • OpenHarmony實(shí)戰(zhàn)開(kāi)發(fā)-性能測(cè)試工具SmartPerf Editor使用指導(dǎo)

    OpenHarmony實(shí)戰(zhàn)開(kāi)發(fā)-性能測(cè)試工具SmartPerf Editor使用指導(dǎo)

    SmartPerf Editor是一款PC端桌面應(yīng)用,通過(guò)監(jiān)測(cè)、采集應(yīng)用運(yùn)行時(shí)FPS、CPU、GPU、Memory、Battery、Network等性能數(shù)據(jù),幫助開(kāi)發(fā)者了解應(yīng)用的性能狀況。SmartPerf Editor還集成了DrawingDoc功能,可錄制Render Service繪制指令,回放并生成不同圖形庫(kù)文件。通過(guò)逐幀逐繪制指令回放,來(lái)識(shí)別是否

    2024年04月28日
    瀏覽(44)
  • H5性能測(cè)試以及H5性能測(cè)試工具

    H5性能測(cè)試以及H5性能測(cè)試工具

    背景由于公司最近項(xiàng)目有一個(gè)H5測(cè)試項(xiàng)目,功能測(cè)試不用多說(shuō),但是H5性能測(cè)試是一個(gè)大難題,于是研究下H5性能測(cè)試,下面總結(jié)下,希望能幫助自己回顧項(xiàng)目也希望能幫到測(cè)友。 H5性能測(cè)試的常用指標(biāo): 白屏?xí)r間:用戶首次看到網(wǎng)頁(yè)內(nèi)容的時(shí)間,即第一次渲染流程完成的時(shí)間

    2024年02月14日
    瀏覽(21)
  • 前端性能測(cè)試必備測(cè)試工具

    前端性能測(cè)試必備測(cè)試工具

    我們?cè)谑褂镁W(wǎng)站過(guò)程中,經(jīng)常會(huì)遇到慢的問(wèn)題,為了找到原因,一般需要借助工具進(jìn)行檢測(cè),通過(guò)工具,可以檢測(cè)出前端站點(diǎn)加載資源的相關(guān)詳細(xì)情況。 今天,就給大家介紹幾款前端性能測(cè)試分析工具,結(jié)合性能測(cè)試工具,實(shí)現(xiàn)通過(guò)量化的方式測(cè)試網(wǎng)站中諸如首字節(jié)加載時(shí)間

    2024年02月05日
    瀏覽(23)
  • 功能測(cè)試(八)—— APP之專項(xiàng)測(cè)試、性能測(cè)試、性能測(cè)試工具SoloPi

    功能測(cè)試(八)—— APP之專項(xiàng)測(cè)試、性能測(cè)試、性能測(cè)試工具SoloPi

    目錄 APP測(cè)試要點(diǎn) 目標(biāo) 一、APP專項(xiàng)測(cè)試 1.1?兼容性 1.2?安裝 1.3?卸載 1.4?升級(jí) 1.5?干擾測(cè)試(交叉事件測(cè)試) 1.6?Push推送 1.7?用戶體驗(yàn) 二、 性能測(cè)試工具 2.1?APP性能測(cè)試工具介紹 —— SoloPi簡(jiǎn)介 2.2?APP性能測(cè)試工具 —— SoloPi使用 三、APP性能測(cè)試 3.1?CPU 3.2?內(nèi)存 3.3?流量 3.4?電

    2024年02月03日
    瀏覽(31)
  • jmeter 性能測(cè)試工具的使用(Web性能測(cè)試)

    jmeter 性能測(cè)試工具的使用(Web性能測(cè)試)

    1、下載 該軟件不用安裝,直接解壓打開(kāi)即可使用。 2、使用 這里就在win下進(jìn)行,圖形界面較為方便 在目錄apache-jmeter-2.13bin 下可以見(jiàn)到一個(gè)jmeter.bat文件,雙擊此文件,即看到JMeter控制面板。主界面如下: 3、創(chuàng)建線程組 測(cè)試計(jì)劃--右鍵——》添加——》hreads——》線程組 設(shè)

    2024年02月10日
    瀏覽(99)
  • 性能測(cè)試怎么做?測(cè)試工具怎么選擇?

    性能測(cè)試怎么做?測(cè)試工具怎么選擇?

    在當(dāng)前軟件測(cè)試行業(yè),熟練掌握性能測(cè)試已經(jīng)是測(cè)試工程師們面試的敲門(mén)磚了,當(dāng)然還有很多測(cè)試朋友們每天的工作更多的是點(diǎn)點(diǎn)點(diǎn),性能方面可能也只是做過(guò)簡(jiǎn)單的并發(fā)測(cè)試,對(duì)于編寫(xiě)腳本,搭建環(huán)境方面也比較陌生。今天這篇文章就給大家梳理一下如何去做性能測(cè)試,和

    2024年02月13日
    瀏覽(26)
  • iOS性能指標(biāo)和性能測(cè)試工具

    iOS性能指標(biāo)和性能測(cè)試工具

    作為一名軟件測(cè)試工程師,在測(cè)試 iOS 應(yīng)用的性能時(shí),需要關(guān)注以下幾個(gè)方面: 1.?響應(yīng)時(shí)間:應(yīng)用的啟動(dòng)時(shí)間、頁(yè)面加載速度、接口響應(yīng)時(shí)間等。 2.?CPU 使用率:應(yīng)用在各種操作下的 CPU 占用情況。 3.?內(nèi)存使用:應(yīng)用在各種操作下的內(nèi)存占用情況。 4.?網(wǎng)絡(luò)性能:應(yīng)用在各種

    2024年02月13日
    瀏覽(29)
  • Linux性能測(cè)試工具

    在Linux Benchmark Suite Homepage網(wǎng)站上列舉了諸多Linux性能測(cè)試工具,包括CPU/RAM/ROM/Cache/net等性能測(cè)試。 測(cè)試工具 這個(gè)工具集中包含以下幾種測(cè)試工具,我們主要使用到bw_mem工具進(jìn)行Memory read和write測(cè)試。 Bandwidth benchmarks(帶寬測(cè)試) Cached file read Memory copy (bcopy) Memory read Memory write Pi

    2023年04月08日
    瀏覽(35)
  • Web 性能測(cè)試工具

    Web 性能測(cè)試工具

    作為網(wǎng)站應(yīng)用的開(kāi)發(fā)者或維護(hù)者,我們需要時(shí)常關(guān)注網(wǎng)站當(dāng)前的健康狀況,譬如在主流程運(yùn)行正常的情況下,各方面性能體驗(yàn)是否滿足期望,是否存在改進(jìn)與提升的空間,如何進(jìn)行快速且準(zhǔn)確的問(wèn)題定位等,為了滿足這些訴求,我們需要進(jìn)行全面且客觀的性能檢測(cè)。 性能檢測(cè)

    2024年02月02日
    瀏覽(25)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包