安裝方法:
站在用戶的角度思考問題,與客戶深入溝通,找到略陽網(wǎng)站設(shè)計與略陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋略陽地區(qū)。
下載地址:https://github.com/akopytov/sysbench
yum install automake libtool -y
unzip sysbench-0.5.zip && cd sysbench-0.5 && sh autogen.sh && ./configure && make && make install
sysbench支持以下幾種測試模式:
1、CPU運算性能
2、磁盤IO性能
3、調(diào)度程序性能
4、內(nèi)存分配及傳輸速度
5、POSIX線程性能
6、數(shù)據(jù)庫性能(OLTP基準測試)
目前sysbench主要支持 MySQL,drizzle,pgsql,oracle等幾種數(shù)據(jù)庫。
原理:采用尋找最大素數(shù)的方式來測試CPU的性能。
cat /proc/cpuinfo查看CPU的配置情況
sysbench --test=cpu --cpu-max-prime=20000 run 結(jié)果如下圖,執(zhí)行耗時39.9044秒
sysbench命令用法:
sysbench --test=<name> help 可以查看各種幫助信息
這里測試的是阿里云主機掛載的SSD磁盤,因此需要切換到SSD的掛載目錄。
cd /bdata/ && makedir sysbench_test && cd sysbench_test/
step1、開16個線程生成2G測試數(shù)據(jù)文件 [注意文件大小要超過內(nèi)存的大小,這樣才能測試出IO開銷]
sysbench --test=fileio --file-total-size=4G --num-threads=16 prepare
step2、執(zhí)行讀寫測試 [下面的命令是執(zhí)行混合隨機讀寫基準測試]
sysbench --test=fileio --file-total-size=4G --num-threads=16 --file-test-mode=rndrw --init-rng=on--max-time=300 --max-requests=0 run
從上圖可以看出,讀18.122G,寫12.081G。請求數(shù)為6597.99個/秒。吞吐量為103Mb/秒。
補充:幾種測試選項
seqwr 順序?qū)懭?/em>
seqrewr 順序重寫
seqrd 順序讀取
rndrd 隨機讀取
rndwr 隨機寫入
rndrw 混合隨機讀/寫
step3、刪除測試文件
sysbench --test=fileio --file-total-size=2G cleanup
OLTP基準測試模擬了一個簡單的事務(wù)處理系統(tǒng)的工作負載。
幫助命令:sysbench --test=oltp help
OLTP測試環(huán)境:
阿里云ECSMySQL5.6 4核8G 500GB SSD
step1、生成表文件
我試驗過程中發(fā)現(xiàn)sysbench0.5的oltp測試有點不一樣。必須切換到sysbench的安裝包的路徑下,不然提示缺少lua文件。
cd /root/sysbench-0.5/sysbench/tests/db
sysbench --test=oltp.lua --oltp-table-size=1000000 --oltp_tables_count=10 --mysql-db=test--mysql-user=root --mysql-password='123456' --mysql-socket='/tmp/mysql.sock' --db-driver=mysql --rand-init=on prepare
#這個操作會生成test.sbtest1表。
--oltp-table-size=1000000 表示每個測試表填充數(shù)據(jù)量為 100萬行
--rand-init=on 表示每個測試表都是用隨機數(shù)據(jù)來填充的
--oltp_tables_count=10 表示會生成 10個測試表
真實測試場景中,數(shù)據(jù)表建議不低于10個,單表數(shù)據(jù)量不低于500萬行,當然了,要視服務(wù)器硬件配置而定。如果是配備了SSD或者PCIE SSD這種高IOPS設(shè)備的話,則建議單表數(shù)據(jù)量最少不低于1億行。
step2、8線程測試
sysbench --test=oltp.lua --oltp-table-size=1000000 \
--mysql-db=test --mysql-user=root --mysql-password='123456' \
--mysql-socket='/tmp/mysql.sock' --db-driver=mysql --oltp-read-only=off \
--max-time=60 --num-threads=8 --report-interval=10 --rand-type=uniform \
--max-requests=0 --percentile=99run >> /tmp/sysbench-oltp-2017-04-27.log
上面的參數(shù)說明:啟動8個并發(fā)線程,讀寫模式,測試時長60秒。
其它參數(shù):
--num-threads=8 表示發(fā)起 8個并發(fā)連接
--oltp-read-only=off 表示不要進行只讀測試,也就是會采用讀寫混合模式測試
--report-interval=10 表示每10秒輸出一次測試進度報告
--rand-type=uniform 表示隨機類型為固定模式,其他幾個可選隨機模式:uniform(固定),gaussian(高斯),special(特定的),pareto(帕累托)
--max-time=120 表示最大執(zhí)行時長為 120秒
--max-requests=0 表示總請求數(shù)為 0,因為上面已經(jīng)定義了總執(zhí)行時長,所以總請求數(shù)可以設(shè)定為 0;也可以只設(shè)定總請求數(shù),不設(shè)定最大執(zhí)行時長
--percentile=99 表示設(shè)定采樣比例,默認是 95%,即丟棄1%的長請求,在剩余的99%里取最大值
結(jié)果如下:
OLTP test statistics:
queries performed:
read: 502936 讀總數(shù)
write: 143696 寫總數(shù)
other: 71848 其他操作總數(shù)(SELECT、INSERT、UPDATE、DELETE之外的操作,例如COMMIT等)
total: 718480 總數(shù)
transactions: 35924 (598.65 per sec.) 總事務(wù)數(shù)(每秒事務(wù)數(shù))
read/write requests: 646632 (10775.68 per sec.) 讀寫總數(shù)(每秒讀寫次數(shù))
other operations: 71848 (1197.30 per sec.) 其他操作總數(shù)(每秒其他操作次數(shù))
ignored errors: 0 (0.00 per sec.)
reconnects: 0 (0.00 per sec.)
General statistics:
total time: 60.0084s 總耗時
total number of events: 35924 共發(fā)生多少事務(wù)數(shù)
total time taken by event execution: 479.9595s 所有事務(wù)耗時相加(不考慮并行因素)
response time:
min: 6.19ms 最小耗時
avg: 13.36ms 平均耗時
max: 187.06ms 最長耗時
approx. 99 percentile: 30.73ms 超過99%平均耗時
Threads fairness:
events (avg/stddev): 4490.5000/8.03
execution time (avg/stddev): 59.9949/0.00
step3、清理上面生成的10個測試表
sysbench --test=oltp.lua --oltp-table-size=1000000 --oltp-tables-count=10\
--mysql-db=test --mysql-user=root --mysql-password='123456' \
--mysql-socket='/tmp/mysql.sock' --db-driver=mysql --num-threads=8 cleanup
可以對數(shù)據(jù)庫進行調(diào)優(yōu)后,再使用sysbench對OLTP進行測試,看看TPS是不是會有所提高。
注意:sysbench的測試只是基準測試,并不能代表實際企業(yè)環(huán)境下的性能指標。
分享題目:sysbench0.5筆記
當前路徑:http://m.2m8n56k.cn/article22/jdsocc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、網(wǎng)站收錄、網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計、面包屑導(dǎo)航、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)