게시판 본문 COM / COM+ by VB 6.0 - Read Only

re: DLLHOST가 메모리를 점유합니다.
작성자: 송원석
작성일시: 2004-12-20 23:30,  조회수: 3,116
먼저 설정과 관련해서 짧게 말씀을 드리도록 하겠습니다. 일단 인터넷 서비스 관리자에서 가상 디렉터리를 생성하면 말씀하신 것처럼 경우에 따라서 COM+ 응용 프로그램이 생성됩니다. 그러나 가급적이면 이런 과정으로 거쳐서 생성된 COM+ 응용 프로그램은 구성 요소 서비스에서 수작업으로 설정하시는 것을 권해드리지 않습니다. 경우에 따라서는 상당히 위험할 수도 있습니다. 지금 하신 작업도 가급적이면 가상 디렉터리를 삭제하셨다가 다시 생성하신 다음 기본 설정을 건드리지 마시길 권해드립니다. 인터넷 서비스 관리자에서 생성한 COM+ 응용 프로그램은 반드시 인터넷 서비스 관리자를 통해서 제어하십시요.

그리고 ASP 프로그램을 그다지 접해보신 경험이 없으셔서 제 설명이 약간 혼란스러우셨군요. 저는 어느 정도 ASP 프로그래밍에 관해서 경험을 가지고 계신줄 알고서 간단하게 답변을 드렸던 것입니다. 혼란을 드려서 죄송합니다. ^_^;;

제가 파악한 오류의 원인은 이렇습니다. ASP 에서는 일단 개체를 생성했으면 사용이 끝난 다음에는 반드시 해제를 시켜주어야만 합니다. 예를 들어서 ASP 님의 코드중에서는 커넥션 개체의 인스턴스 참조를 담고 있는 DbCon 변수를 생성했다가 나중에 Nothing 으로 참조를 해제시켜주는 코드가 있으므로 이미 이 점에 대해서는 잘 알고 계실 것으로 생각됩니다. 그런데 다음과 같은 경우를 한 번 가정해 보시기 바랍니다. 일단 여기에서는 편의상 sQuery 변수에 "CS01" 라는 문자열이 들어있는 경우의 SELECT CASE 문을 예로 들어보겠습니다.

이 경우 코드는 SELECT 쿼리를 문자열로 구성하고, Execute() 메서드를 사용하여 레코드셋을 얻습니다. 그리고 While ... ... WEnd 문으로 루프를 돌리고, 루프가 끝나고 나면 레코드셋 개체 변수인 RS 를 Nothing 으로 설정합니다. 그리고 코드의 끝부분에서는 DbCon 변수를 Nothing 으로 설정하여 생성된 모든 개체 참조를 해제시켜주죠. 그런데 만약 레코드셋 개체 변수인 RS 를 Nothing 으로 설정하는 코드의 앞 쪽 부분에서 어떤 오류가 발생했다면 어떻게 될까요? 그러면 오류가 발생하는 그 라인에서 코드의 실행이 중단되므로 개체 참조가 해제될 기회가 없어집니다. 따라서 이것이 여러차례 반복되면서 메모리 사용량이 점점 올라가게 되는 것이죠. 즉 근본적으로는 이 페이지에서 오류를 제거하셔야만 합니다. 아마도 페이지에 전달되는 값들을 주의깊게 보시면 그 원인이 드러날것 같습니다. ^_^

제가 알려드린 한 줄의 코드는 오류가 발생하면 그 코드를 무시하고 다음 라인의 코드를 실행하라는 지시를 내리는 코드입니다. 따라서 이 경우에는 코드의 성공적인 실행 여부를 떠나서 무조건 최종적으로는 개체 참조를 해제하는 코드는 실행이 되는 것입니다. 결국 지금 말씀드린 방법은 장기적으로는 미봉책이 될 것이고, 앞에서도 말씀드렸지만 근본적인 페이지의 오류를 잡으셔야만 합니다.

감사합니다.

IP 주소: 211.216.131.33
전체 276 건의 게시물, 12 페이지로 구성된 COM / COM+ by VB 6.0 게시판의 9 페이지입니다.
게시물
77

COM+ 관련 문의드립니다.

이환진

2005-02-14 5,148
76

re: COM+ 관련 문의드립니다.

송원석

2005-02-15 3,031
75

COM+을 모니터링 할수있을까요?

Glove88

2004-12-27 705
74

re: COM+을 모니터링 할수있을까요?

송원석

2004-12-27 2,946
73

DLLHOST가 메모리를 점유합니다.

ASP

2004-12-20 1,295
72

re: DLLHOST가 메모리를 점유합니다.

송원석

2004-12-20 3,102
71

re: DLLHOST가 메모리를 점유합니다.

ASP

2004-12-20 910
70

re: DLLHOST가 메모리를 점유합니다. [2]

송원석

2004-12-20 3,119

re: DLLHOST가 메모리를 점유합니다.

송원석

2004-12-20 3,116
68

친절한 답변 정말 고맙습니다..

ASP

2004-12-21 859
67

re: 친절한 답변 정말 고맙습니다..

송원석

2004-12-21 2,933
66

꺼이꺼이 WebService에서의 dll 사용에 관하여..

toast

2004-11-22 3,576
65

re: 꺼이꺼이 WebService에서의 dll 사용에 관하여..

송원석

2004-11-22 3,099
63

re: 꺼이꺼이 WebService에서의 dll 사용에 관하여..

toast

2004-11-22 2,896
62

아래 클라이언트IP 때문에 질문한사람입니다. 한번봐주세요..

Glove88

2004-11-19 3,081
61

re: 아래 클라이언트IP 때문에 질문한사람입니다. 한번봐주세요..

송원석

2004-11-20 2,709
60

COM+속도 개선

헌이

2004-11-16 2,962
59

re: COM+속도 개선

송원석

2004-11-16 3,004
58

COM+의 접속자 클라이언트정보를 구할수있을까요?

Glove88

2004-11-11 2,686
57

re: COM+의 접속자 클라이언트정보를 구할수있을까요? [2]

송원석

2004-11-12 3,135
56

com+관련 문의입니다.

elle

2004-11-10 3,061
55

re: com+관련 문의입니다. [1]

송원석

2004-11-10 2,992
54

어드바이스를 좀 구하러 왔습니다...^^

zziuni

2004-10-19 3,064
53

re: 어드바이스를 좀 구하러 왔습니다...^^

송원석

2004-10-19 3,046
52

감사합니다. ^^

zziuni

2004-10-20 2,760