OpenVZ 컨테이너에 데이터베이스 서버 (MySQL)를 설정하려고하는데 얼마나 많은 CPU를 할당 해야하는지 궁금합니다. 나는 그것을 벤치마킹하기로 결정했다. 두 개의 OS / MySQL 배포를 비교하고 1, 2, 3 및 4 CPU에서 어떻게 수행되는지 테스트했습니다.
첫 번째 소프트웨어 구성은 다음과 같습니다.
- CentOS 릴리스 6.5 (최종)
- readline 5.1을 사용하는 redhat-linux-gnu (x86_64) 용 mysql Ver 14.14 Distrib 5.1.71
두번째:
- 데비안 GNU / 리눅스 7 \ n \ l
- readline 6.2를 사용하는 debian-linux-gnu (x86_64) 용 mysql Ver 14.14 Distrib 5.5.31
2.6.32-openvz-042stab083.2-amd64 # 1 SMP Fri 11 월 8 일 17:59:25 MSK 2013 x86_64 GNU / Linux.
모든 소프트웨어는 패키지에서 설치되었으며 사용자 정의 구성 조정없이 기본적으로 사용되었습니다.
하드웨어 : 6GB RAM, 1-4 CPU 3.5GHz.
벤치마킹을 위해 다음 시나리오에서 sysbench를 사용했습니다.
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --db-driver=mysql --mysql-password=d prepare
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --db-driver=mysql --mysql-password=d --max-time=60 --oltp-read-only=on --max-requests=0 --num-threads=8 run
두 경우 모두 테이블의 엔진은 InnoDB입니다.
내가보고있는 결과는 초당 트랜잭션 수입니다. 결과는 매우 안정적이었습니다. 오류는 1 % 미만이었습니다.
결과는 CentOS / MySQL5.1에서는 좋았지 만 데비안 /MySQL5.5에서는 매우 이상했습니다.
보시다시피 데비안의 MySQL5.5는 여러 CPU를 제대로 활용하지 못합니다. CPU 2 개의 성능은 1의 성능보다 높지만 CentOS / MySQL5.1의 성능보다 분명히 낮습니다. 또한 CPU를 2 개 이상 추가하면 정말 이상합니다.
누군가 무슨 일이 일어나고 있는지 설명해 주시겠습니까? CPU를 추가 할 때 어스 MySQL에서 성능이 저하되는 이유는 무엇입니까?