본문 바로가기
MySql

MySQL mysql show processlist는 많은 프로세스를 나열합니다. sleep 및 info = null?

by 베이스 공부 2020. 10. 31.
반응형

mysql 서버에 연결되는 웹 앱에 스트레스 테스트를 삽입하고 mysql의 show processlist를 모니터링하고 있습니다.

로드가 높을 때 (높은 스왑 I / o) 다음과 같은 많은 프로세스를 얻습니다.

| 97535 | db| localhost | userA | Sleep   |  515 |         | NULL 
| 97536 | db| localhost | userA | Sleep   |  516 |         | NULL 
| 97786 | db| localhost | userA | Sleep   |  343 |         | NULL 
| 97889 | db| localhost | userA | Sleep   |  310 |         | NULL 

하지만 왜 그들이 아직 거기에 있고 죽지 않았는지 이해할 수 없습니까? 이것은 결국 모든 max_connections를 사용하는 내 앱으로 이어지고 들어오는 요청 처리를 중지합니다.

그 프로세스가 무엇이며 그들이 거기에서 무엇을하고 있는지 아십니까?

 

해결 방법

 

클라이언트가 보유하고있는 유휴 연결입니다. 사용중인 클라이언트 라이브러리 (JDBC, ...)가 사용되지 않는 연결을 너무 오래 열어 두지 않도록 구성되어 있는지 또는 # 클라이언트 * 최대 연결 수가 너무 크지 않은지 확인해야합니다.

 

참조 페이지 https://stackoverflow.com/questions/4053744

 

 

반응형

댓글