日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

性能測試指導

本文介紹RDS MySQL實例性能測試的方法。

前提條件

背景信息

實例性能測試的指標包括:

  • 每秒執行事務數TPS(Transactions Per Second)

    數據庫每秒執行的事務數,以COMMIT成功次數為準。

    • SysBench標準OLTP讀寫混合場景中一個事務包含18個讀寫SQL。
    • SysBench標準OLTP只讀場景中一個事務包含14個讀SQL(10條主鍵點查詢、4條范圍查詢)。
    • SysBench標準OLTP只寫場景中一個事務包含4個寫SQL(2條UPDATE、1條DETELE、1條INSERT)。
  • 每秒執行請求數QPS(Queries Per Second)

    數據庫每秒執行的SQL數,包含INSERT、SELECT、UPDATE、DETELE、COMMIT等。

SysBench參數說明

參數說明
db-driver數據庫引擎。
mysql-hostRDS實例連接地址。
mysql-portRDS實例連接端口。
mysql-userRDS實例賬號。
mysql-passwordRDS實例賬號對應的密碼。
mysql-dbRDS實例數據庫名。
table_size測試表大小。
tables測試表數量。
events測試請求數量。
time測試時間。
threads測試線程數。
percentile需要統計的百分比,默認值為95%,即請求在95%的情況下的執行時間。
report-interval表示N秒輸出一次測試進度報告,0表示關閉測試進度報告輸出,僅輸出最終的報告結果。
skip-trx是否跳過事務。
  • 1:跳過
  • 0:不跳過

性能測試步驟

本文以CentOS系統為例,演示性能測試的步驟。

  1. 登錄ECS實例,通過如下步驟安裝SysBench。
    sudo yum install gcc gcc-c++ autoconf automake make libtool mysql-devel git mysql
    git clone https://github.com/akopytov/sysbench.git
    ##從Git中下載Sysbench
    cd sysbench
    ##打開sysbench目錄
    git checkout 1.0.18
    ##切換到sysbench 1.0.18版本
    ./autogen.sh
    ##運行autogen.sh
    ./configure --prefix=/usr --mandir=/usr/share/man
    make
    ##編譯
    make install
  2. 進行性能測試,包括OLTP讀寫混合場景壓測、OLTP只讀場景壓測和OLTP只寫場景壓測。
    • OLTP讀寫混合場景壓測

      參見如下命令進行測試,參數說明請參見SysBench參數說明

      ##準備數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300  --threads=XXX oltp_read_write prepare
      
      ##運行workload
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300   --threads=XXX --percentile=95 --report-interval=1 oltp_read_write run
      
      ##清理數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300   --threads=XXX --percentile=95  oltp_read_write cleanup

      測試結果示例如下:

      • QPS:23869.32
      • TPS:1193.47
      • 響應時間(RT):36.89 ms
      OLTP讀寫混合場景壓測
    • OLTP只讀場景壓測

      參見如下命令進行測試,參數說明請參見SysBench參數說明

      ##準備數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300  --threads=XXX  oltp_read_only prepare
      
      ##運行workload
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300  --threads=XXX --percentile=95 --skip-trx=1 --report-interval=1 oltp_read_only run
      
      ##清理數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300   --threads=XXX --percentile=95 oltp_read_only cleanup

      測試結果示例如下:

      • QPS:26130.73
      • 響應時間(RT):33.72 ms
      OLTP只讀場景壓測
    • OLTP只寫場景壓測

      參見如下命令進行測試,參數說明請參見SysBench參數說明

      ##準備數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300  --threads=XXX  oltp_write_only prepare
      
      ##運行workload
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300   --threads=XXX --percentile=95 --report-interval=1 oltp_write_only run
      
      ##清理數據
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300   --threads=XXX --percentile=95  oltp_write_only cleanup

      測試結果示例如下:

      • TPS:4255.01
      • 響應時間(RT):16.71 ms
      OLTP只寫場景壓測
    說明 SysBench工具有很多標準壓測模型,您可以根據自己的業務場景選擇合適的模型使用。