데이터베이스의 표준 성능 테스트는 sysbench 1.0.20로 진행합니다.
본 문서의 테스트에서는 Sysbench 1.0.20 버전을 사용하며, 설치 방법은 아래와 같습니다.
git clone https://github.com/akopytov/sysbench.git
git checkout 1.0.20
yum install gcc gcc-c++ autoconf automake make libtool bzr mysql-devel git mysql
cd sysbench
./autogen.sh
./configure
make -j
make install
설명:상기 내용은 부하 테스트를 CVM(CentOS 시스템)에 설치하는 방법입니다. 다른 운영 체제에 설치하려면 Sysbench 공식 문서를 참고하십시오.
유형 | 설명 |
---|---|
테스트 인스턴스 사양 | 4코어 8GB 메모리, 8코어 32GB 메모리, 16코어 128GB 메모리의 세 가지 일반적으로 사용되는 테스트 사양 선택 |
클라이언트 설정 | 64코어 128GB메모리 |
클라이언트 내부 네트워크 대역폭 | 23Gbps |
테스트 데이터 볼륨 | 데이터베이스 인스턴스 메모리 * 1.2 |
데이터베이스 인스턴스 버전 테스트 | 5.6 20210630, 5.7 20210630, 8.0 20210330 |
sysbench --db-driver=mysql --mysql-host=xxxx --mysql-port=xxxx --mysql-user=xxxx --mysql-password=xxxx --mysql-db=sbtest --table_size=xxxx --tables=xxxx --events=0 --time=600 --threads=xxxx --percentile=95 --report-interval=1 oltp_read_write prepare
sysbench --db-driver=mysql --mysql-host=xxxx --mysql-port=xxxx --mysql-user=xxxx --mysql-password=xxxx --mysql-db=sbtest --table_size=xxxx --tables=xxxx --events=0 --time=600 --threads=xxxx --percentile=95 --report-interval=1 oltp_read_write run
성능 부하 테스트 매개변수 설명:
oltp_read_write
, /usr/share/sysbench/oltp_read_write.lua 스크립트를 호출하여 oltp 모드 테스트 진행.--tables=xxxx
, 이 테스트에 사용된 테이블 수.--table_size=xxxx
, 이 테스트에 사용된 테이블 행의 수.--num-threads=128
, 이 테스트의 클라이언트 동시 접속 수.--report-interval=1
, 테스트 결과가 1초마다 출력됨.--percentile=95
, 샘플링 비율 설정. 기본값: 95%.--time=600
, 이 테스트의 실행 시간. 600은 600초를 나타냄.본문의 사용 사례는 모두 sysbench의 lua 스크립트를 사용합니다.
일반적인 구성 유형의 각 매개변수 템플릿에 대한 성능 테스트를 수행합니다. 테스트 결과는 다음을 참고하십시오.
CPU(코어) | 메모리(GB) | threads | 테스트 시간 | 템플릿 | SysBench QPS | SysBench TPS | avg_lat |
---|---|---|---|---|---|---|---|
4 | 8 | 32 | 10분 | 기본 템플릿(폐기) | 34428.69 | 1721.43 | 18.59ms |
고성능 매개변수 템플릿 | 35917.50 | 1795.87 | 17.82ms | ||||
고안정성 템플릿 | 34834.04 | 1741.70 | 18.37ms | ||||
8 | 32 | 64 | 10분 | 기본 템플릿(폐기) | 61210.19 | 3060.51 | 20.91ms |
고성능 매개변수 템플릿 | 67719.55 | 3385.98 | 18.90ms | ||||
고안정성 템플릿 | 64910.09 | 3245.50 | 19.72ms | ||||
16 | 128 | 128 | 10분 | 기본 템플릿(폐기) | 106965.44 | 5348.27 | 23.93ms |
고성능 매개변수 템플릿 | 127955.48 | 6397.77 | 20.00ms | ||||
고안정성 템플릿 | 119509.02 | 5975.45 | 21.41ms |
CPU(코어) | 메모리(GB) | threads | 테스트 시간 | 템플릿 | SysBench QPS | SysBench TPS | avg_lat |
---|---|---|---|---|---|---|---|
4 | 8 | 32 | 10분 | 기본 템플릿(폐기) | 34428.69 | 1721.43 | 18.59ms |
고성능 매개변수 템플릿 | 35917.50 | 1795.87 | 17.82ms | ||||
고안정성 템플릿 | 34834.04 | 1741.70 | 18.37ms | ||||
8 | 32 | 64 | 10분 | 기본 템플릿(폐기) | 61210.19 | 3060.51 | 20.91ms |
고성능 매개변수 템플릿 | 67719.55 | 3385.98 | 18.90ms | ||||
고안정성 템플릿 | 64910.09 | 3245.50 | 19.72ms | ||||
16 | 128 | 128 | 10분 | 기본 템플릿(폐기) | 106965.44 | 5348.27 | 23.93ms |
고성능 매개변수 템플릿 | 127955.48 | 6397.77 | 20.00ms | ||||
고안정성 템플릿 | 119509.02 | 5975.45 | 21.41ms |
CPU(코어) | 메모리(GB) | threads | 테스트 시간 | 템플릿 | SysBench QPS | SysBench TPS | avg_lat |
---|---|---|---|---|---|---|---|
4 | 8 | 32 | 10분 | 기본 템플릿(폐기) | 32594.79 | 1629.74 | 19.63ms |
고성능 매개변수 템플릿 | 33383.77 | 1669.19 | 19.17ms | ||||
고안정성 템플릿 | 32071.90 | 1603.60 | 19.95ms | ||||
8 | 32 | 64 | 10분 | 기본 템플릿(폐기) | 65718.22 | 3285.91 | 19.47ms |
고성능 매개변수 템플릿 | 70195.37 | 3509.77 | 18.23ms | ||||
고안정성 템플릿 | 60704.69 | 3035.23 | 21.08ms | ||||
16 | 128 | 128 | 10분 | 기본 템플릿(폐기) | 132023.66 | 6601.18 | 19.38ms |
고성능 매개변수 템플릿 | 151021.67 | 7551.08 | 16.95ms | ||||
고안정성 템플릿 | 132391.01 | 6619.55 | 19.33ms |
문제 해결에 도움이 되었나요?