- 이 문서는 구루비에서 작성하였습니다.
- 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 출처 : http://wiki.gurubee.net/pages/viewpage.action?pageId=6261034&
- 구루비 지식창고의 모든 문서는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.
1. 개요
1) 'Network'과 관련된 대기이벤트
1 | SQL*Net message from/to client |
2 | SQL*Net more data from/to client |
3 | SQL*Net message from/to dblink |
4 | SQL*Net more data from/to dblink |
2) 설명
- 이 이벤트들은 대부분 Idle 이벤트들로 취급되어, 성능문제를 분석할 때 제외하는 경우가 많음.
- 하지만 특정 상황에서 이 이벤트들이 성능저하원인 분석에 있어서 결정적 단서 제공하는 경우 종종 발생함.
2. 발생원인
1) 'Network' 속도가 느린 경우
- 만약 이 이벤트 대기시간이 불필요하게 높다면, 'Network' 속도 의심 필요.
- 또한, RAC로 구성된 환경에서 gc와 관련된 평균 대기시간이 지나치게 높게 나온다면, 'Network' 속도 점검 필요함.
- RAC에서의 캐시동기화는 기본적으로 'Network'을 통해 이루어지기 때문에, 'Network' 구성에 문제가 있을 경우 성능과 직결됨.
2) SQL 실행회수(Execute Count)가 불필요하게 높은 경우
- 실행회수가 과다한 경우, 클라이언트와 DBMS 간의 'Network' 통신이 빈번해지고, 이로 인해 대기시간 증가함.
- 이 경우 불필요한 실행회수에 의해 시스템 저하가 발생되는지 의심해야 함.
3) 어플리케이션 구현방식에 문제가 있는 경우
- 어플리케이션 구현방식에 문제가 있어 DBMS와 접속을 유지한 채 불필요하게 대기하는 시간이 많을 경우, 이 대기시간이 높게 나타남.
- 예를들어, 화면상에 설계된 레코드 수가 20건일 경우, 특정 필드에서 추가 계산을 하는 무거운 로직이 있을 경우, 이를 계산하기 위해 fetch를 빠르게 못하게 되고 이로 인해 대기시간이 증가함.
- 그러므로, 이 이벤트가 보일 경우, 그 원인을 찾아 해결을 해야 함.
문서에 대하여
- 최초작성자 : 강정식
- 최초작성일 : 2011년 01월 22일
- 이 문서는 오라클클럽 코어 오라클 데이터베이스 스터디 모임에서 작성하였습니다.
- 이 문서의 내용은 (주)엑셈에서 출간한 'ADVANCED OWI IN ORACLE 10G'를 참고하였습니다.
문서정보
- 이 문서는 구루비에서 작성하였습니다.
- 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 출처 : http://wiki.gurubee.net/pages/viewpage.action?pageId=6261034&
- 구루비 지식창고의 모든 문서는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.