게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 반복문안에 쿼리 던지면 부하가 ..해결방법 없을까요? |
---|
작성자: 송원석
작성일시: 2005-05-09 08:08,
조회수: 3,130
|
지금 문제가 되는 부분은 단순하게 반복문에서 10 분전의 데이터를 여러차례 조회하는 부분이 아닌 것 같습니다. 차근차근 하나씩 짚어보도록 하겠습니다. ^_^
먼저 동작 양상을 살펴보면 CPU 의 점유율이 높아진 채로 실행되다가 스크립트 타임아웃이 난다는 것이데요. 이 결과 자체는 매우 당연한 것입니다. 즉 반복문이 실행되면 그 동안 CPU 의 점유율이 올라가는 것도 당연하고, 스크립트 타임아웃 제한값을 지날때까지 실행되면 오류가 발생하는 것도 당연한 것이죠. 그렇다면 문제가 무엇일까요? 정작 문제는 무엇 때문에 반복문이 그렇게 오래동안 돌고 있는냐는 점입니다. 이 반복문이 도는 기준은 10 분전의 데이터를 조회해오는 쿼리가 아니라 현재 데이터를 조회해오는 첫 번째 쿼리가 기준입니다. 따라서... SQL = "SELECT * FROM Counter WHERE LEFT(Counter_RegName, 11) = '" & nowDate & "'"위의 SQL 구문의 결과가 멏 건이냐에 좌우되는 것이죠. 이 쿼리의 결과가 100 건이면 루프문이 100 번 반복되면서 다시 100 번의 쿼리를 날릴 것이고, 10 건 이면 루프문이 10 번 반복되면서 다시 10 번의 쿼리를 날리겠죠. 그러나 문제는 만약 결과적으로 100 번정도 루프를 돈다고 하더라도 정상적인 상태라면 스크립트 타임아웃이 발생하기 전에 종료되는 것이 일반적인데, 지금과 같은 경우에는 그렇지 않고 뭔가 문제가 발생한다는 점입니다. 따라서 다음과 같은 경우들을 생각해 볼 수 있겠죠. 1. 첫 번째 쿼리의 결과 갯수가 정말로 많은 경우. 이 경우에는 달리 방법이 없겠죠. 스크립트 타임아웃의 값을 늘려주십시요. 2. 반복문의 조건 검사가 뭔가 잘못된 경우, 즉 무한 루프. 구문을 다시 한 번 검사해보시기 바랍니다. 3. 반복문 내부에서 실행되는 코드 문제로 한 건, 한 건이 수행되는 시간이 긴 경우. 구문을 다시 한 번 검사해보시기 바랍니다. 4. 네트워크 문제로 반복문 내부에서 실행되는 쿼리가 응답이 느린 경우. 네트워크 관리자에게 문의하십시요.먼저 문제의 원인이 위의 경우들 중에서 혹은 또 다른 가능성 있는 경우들 중에서 정확하게 어떤 것인지를 파악하시고 작업을 처리하셔야 할 것 같습니다. 그리고 참고로 pRs 를 대상으로 Close() 메서드를 한 번 호출해보시기 바랍니다. ^_^ 감사합니다. |
IP 주소: 203.231.54.9
|
을지소문 |
성실한 답변에 감사드립니다..^^
|
2005-05-09 11:13 |
게시물 | ||||
---|---|---|---|---|
1,129 | 2005-05-13 | 4,919 | ||
1,128 |
디코딩 관련 질문입니다. ^^ [2] |
오마르 |
2005-05-10 | 880 |
1,127 |
을지소문 |
2005-05-07 | 975 | |
2005-05-09 | 3,130 | |||
1,125 | 2005-05-12 | 2,821 | ||
1,124 |
궁굼 |
2005-05-06 | 795 | |
1,123 | 2005-05-07 | 2,718 | ||
1,122 |
궁굼 |
2005-05-09 | 755 | |
1,121 |
re: B태그의 경우... [1] |
궁굼 |
2005-05-13 | 683 |
1,120 |
궁굼 |
2005-05-17 | 751 | |
1,119 | 2005-05-18 | 2,741 | ||
1,118 |
re: 샘플입니다... [2] |
궁굼 |
2005-05-19 | 809 |
1,116 | 2005-05-06 | 2,771 | ||
1,115 |
을지소문 |
2005-05-04 | 3,281 | |
1,114 | 2005-05-04 | 3,067 | ||
1,113 |
웹하드 버그일까요? [1] |
2005-05-04 | 3,136 | |
1,112 |
re: 웹하드 버그일까요? [1] |
2005-05-06 | 2,843 | |
1,111 |
re: 웹하드 버그일까요? [1] |
2005-05-06 | 2,796 | |
1,110 |
김현수 |
2005-05-04 | 930 | |
1,109 |
re: Datepart("ww", date()) 값으로 몇월달 몇째주인지 알수 없나요? 주간매출때문에 ㅠ.ㅠ |
2005-05-04 | 3,065 | |
1,108 |
김현수 |
2005-05-03 | 855 | |
1,107 | 2005-05-03 | 3,174 | ||
1,106 | 2005-05-03 | 3,003 | ||
1,105 | 2005-05-03 | 2,998 | ||
1,104 |
강수민 |
2005-05-02 | 878 |