게시판 본문 ASP, ASP.NET, IIS & Script - Read Only  
| ADODB.Command 사용지 DB 연결수 급속증가... | 
|---|
| 
                작성자: 박노철
             
                작성일시: 2005-09-23 13:56, 
                조회수: 7,178
             | 
| 
                        사이트 운영중에 ADODB.Connection 객체를 사용해서 sp 를 호출하는 부분을 ADODB.Command 객체를 사용하는 방식으로 바꿨습니다. 그런데 바꾸고 나니 DB커넥션이 급속하게 증가하는군요. Command 객체를 사용할 때 잘못 사용하 는 부분이 있는가본데 잘 찾지를 못하겠습니다. ASP 페이지 안에서 다음과 같 은 코드를 사용합니다. 
Dim ComDB , ConDB, gORs
Set ComDB = Server.CreateObject("ADODB.Command")
Set gORs = Server.CreateObject("ADODB.RecordSet")
Set oFs = CreateObject("Scripting.FileSystemObject")
ComDB.ActiveConnection = ConDB
ComDB.CommandText = "stored_procedure_name"
ComDB.CommandType = AdCmdStoredProc
ComDB.Parameters.Append ComDB.CreateParameter("p1", adVarChar, adParamInput, 10, sP1)
Set gORs = ComDB.Execute
With gORs
   .. 레코드셋 사용...
End With
Set oFs = Nothing
Set gORs = Nothing
Set ComDB = Nothing
이렇게 해놓고 아래에서 동일한 Connection 을 또 사용합니다.
Set ComDB = Server.CreateObject("ADODB.Command")
Set gORs = Server.CreateObject("ADODB.RecordSet")
ComDB.ActiveConnection = ConDB
ComDB.CommandText = "stored_procedure_2"
ComDB.CommandType = AdCmdStoredProc
ComDB.Parameters.Append ComDB.CreateParameter("p2", adVarChar, adParamInput, 10, p2)
Set gORs = ComDB.Execute
With gORs
   .. 레코드셋 사용...
End With
Set gORs = Nothing
Set ComDB = Nothing
위의 코드 여러번 반복하다가 
..페이지 맨 아래...
ConDB.Close
Set ConDB = Nothing
Command 객체를 쓰는 부분이 모두 이런식으로 만들어져 있습니다.페이지 맨 위에서 Connection 을 하나 열고 Command 객체와 Recordset 객체를 Create한 다음, Command 객체에 Connection 을 세팅해서 Command 객체를 실행 시켜서 Recordset 을 읽어옵니다. DB Connection 을 맨 아래에서 닫는데요, 이것은 커넥션을 연 후에 여러개의 프로시저를 호출해야 하는 상황이라서 이렇게 만들었습니다. 그런데 위의 코드에 어떤 문제가 있는지... 위의 코드를 반영하면 DB커녁션이 급격하게 증가하고 DB서버의 CPU 가 100을 쳐버립니다. 위의 코드에 어떤 문제가 있는지, 커맨드 객체를 사용할 때 주의점이라면 어떤 것들이 있는지 알려주시면 감사하겠습니다. 관련 링크도 환영합니다. | 
| IP 주소: 218.232.115.197 | 
        전체 2,095 건의 게시물,
        84 페이지로 구성된
        ASP, ASP.NET, IIS & Script 게시판의
        34 페이지입니다.
    
|   | 게시물 | |||
|---|---|---|---|---|
|  | 2005-09-23 | 7,178 | ||
| 1,306 | 2005-09-23 | 3,887 | ||
| 1,305 | 끄적 | 2005-09-22 | 1,273 | |
| 1,304 | 2005-09-23 | 6,552 | ||
| 1,303 | 끄적 | 2005-09-23 | 1,379 | |
| 1,302 | 가벼운 이야기 [1] | 2005-09-22 | 3,772 | |
| 1,301 | 한글 상태를 유지 [4] | 2005-09-22 | 4,330 | |
| 1,300 | 정보문 | 2005-09-22 | 1,210 | |
| 1,299 | 훈스 | 2005-09-21 | 1,338 | |
| 1,298 | 2005-09-21 | 5,117 | ||
| 1,297 | omar | 2005-09-21 | 1,211 | |
| 1,296 | 2005-09-21 | 4,208 | ||
| 1,295 | 2005-09-16 | 4,278 | ||
| 1,294 | 2005-09-16 | 3,951 | ||
| 1,293 | 2005-09-15 | 3,397 | ||
| 1,292 | 2005-09-15 | 3,798 | ||
| 1,291 | 2005-09-08 | 3,645 | ||
| 1,290 | 2005-08-29 | 3,695 | ||
| 1,289 | 2005-08-29 | 3,693 | ||
| 1,288 | 2005-08-26 | 3,607 | ||
| 1,287 | 2005-08-26 | 3,560 | ||
| 1,286 | 
                             | 2005-09-07 | 3,473 | |
| 1,285 | 2005-08-25 | 4,044 | ||
| 1,284 | 2005-08-25 | 3,742 | ||
| 1,283 | 
                             | 2005-08-26 | 4,116 | 

 sign in
 sign in
 join
 join 
     re: ADODB.Command 사용지 DB 연결수 급속증가...
 re: ADODB.Command 사용지 DB 연결수 급속증가... 확인
 확인 취소
 취소