Hax0r

MySQL Resolving 으로 인한 지연현상 본문

0x00 개발/Solved

MySQL Resolving 으로 인한 지연현상

영준이 2017.05.23 19:46



갑작스러운 MySQL 속도 지연현상이 발생했다.

제일 먼저, Slow Query 를 확인했고 이상 없음으로 판정했다.

이 후, 이전 이와 같은 예외 케이스를 경험한 적 이 있어서, 혹시 해서하니 역시 Resloving 문제였다.


MySql에서 접속 시, IP에 대한 Resloving(역질의)가 이루어진다.

하지만 대 부분의 IP는 등록되어 있지 않으며 DNS가 느리다면 이 부분은 더욱 심각한 속도 문제로 발생한다.

이 를 해결 할 수 있는 방법은 역질의를 순서를 건너뛰는 방법이다.


skip-name-resolve 설정을 하면된다.



위 옵션에 대해 부가 설명을 하자면,

클라이언트에서 서버로 접속시 DNS Lookup 과정을 생략해 줍니다.

localhost 로 접속하는 경우는 문제가 없지만 IP 로 접속하는 환경에서는 DNS 서버가 느리거나 아님 장애 발생시에 해당 옵션을 설정해 주므로써 DB 접속시에 문제점을 해결할 수 있습니다.



skip-name-resolve은 설정 파일에서 직접적으로 할 수 있고, 또는 아래 명령어를 통하여 설정할 수 있다.



mysql> 

show global variables like 'skip_name_resolve';

show global variables like '%timeout%';

show variables like '%timeout';

show processlist;



(MySQL 접속 시, 간단 흐름도)



참고 문서


0 Comments
댓글쓰기 폼