14.13.6 InnoDB 백그라운드 I/O 스레드 수 구성
InnoDB는 다양한 유형의 I / O 요청을 처리하기 위해 백그라운드 스레드 를 사용합니다. 구성 매개 변수 innodb_read_io_threads
및 innodb_write_io_threads
를 사용하여 데이터 페이지에 대한 읽기 및 쓰기 I / O를 처리하는 백그라운드 스레드 수를 구성 할 수 있습니다. 이러한 매개 변수는 각각 읽기 및 쓰기 요청에 사용되는 백그라운드 스레드 수를 나타냅니다. 이들은 지원되는 모든 플랫폼에서 사용할 수 있습니다. 이러한 매개 변수의 값은 MySQL 옵션 파일 ( my.cnf
또는 my.ini
)에서 설정할 수 있습니다. 동적으로 변경할 수 없습니다. 이러한 매개 변수의 기본값은 4
이며, 허용되는 값의 범위는 1-64
입니다.
이 변경의 목적은 InnoDB를 하이 엔드 시스템에서 더 확장하는 것입니다. 각 백그라운드 스레드는 보류중인 I / O 요청을 최대 256 개 처리 할 수 있습니다. 백그라운드 I / O의 주요 소스는 미리 요청입니다. InnoDB는 백그라운드 스레드의 대부분이 균등하게 작업을 공유하는 방식으로 들어오는 요청의로드 균형을 취하려고합니다. InnoDB는 또한 요구를 1 개에 합체 할 수있는 가능성을 높이기 위해 읽기 요청을 같은 범위에서 같은 스레드에 할당하려고합니다. 하이 엔드 I / O 서브 시스템을 사용하고 있으며, SHOW ENGINE INNODB STATUS
64 × innodb_read_io_threads
개 이상의 보류중인 읽기 요청이 나타나는 경우 innodb_read_io_threads
값을 늘리면 도움이 될 수 있습니다.
InnoDB의 I / O 성능 자세한 내용은 섹션 8.5.7 "InnoDB 디스크 I / O 최적화" 를 참조하십시오.