- 1초동안 실행한 횟수
- 함수
Add : 두수 더하기
AddData : DB에 데이터 Insert
- 절대적인 숫자의 크기는 의미없음 (상대적인 수치만 보기)
COM+ 벤치마킹
서버 응용프로그램 | ||||
클라이언트 | 언어 | 호출방법 | Add | AddData |
VC++ (MFC) |
ATL/C++, COM+ | Custom | 10277 | 381 |
ATL/C++, COM+ | Dispatch | 3838 | 346 | |
C#, COM+ | Dispatch | 1521 | 373 | |
C# (WinApp) | C#, COM+ | 1410 | 384 |
라이브러리 응용프로그램 | ||||
클라이언트 | 언어 | 호출방법 | Add | AddData |
VC++ (MFC) |
ATL/C++, COM+ | Custom | 36757 | 67 |
ATL/C++, COM+ | Dispatch | 15895 | 65 | |
C#, COM+ | Dispatch | 2021 | 411 | |
C# (WinApp) | C#, COM+ | 4177 | 511 |
일반 라이브러리 | ||||
C# (WinApp) | C#, Library | 639 | ||
VC++ (MFC) | VC++, DLL | 916 |
ATL COM+ (VC++)
- Unmanaged (Native)의 Custom 인터페이스로 호출시 호출성능은 가장 좋음
- 라이브러리 응용프로그램 패키지에서 호출성능은 가장 좋으나
AddData 의 경우 DB 풀링이 안되는거 같아 성능 저하 현상
- .Net 클라이언트 프로그램에서 호출했을 경우도 Iterop 에 의한 성능저하 별로 없음
: 서버 응용프로그램 패키지에서 실행 권장
: 어플리케이션 프로그램이 아닌 웹환경에서는 대세
C# COM+ (.Net Enterprise Service)
- Unmanaged (Native) 코드보다는 호출성능은 떨어짐
- 그러나 DB업무인 AddData의 경우 Unmanaged 코드랑 성능차이 없음
- AddData 의 경우 라이브러리 응용프로그램 패키지에서 성능 향상
(ATL COM+ 와 대조적인 결과, DB풀링을 드라이버차원이 아닌 .Net 어셈블리에서 처리하는것 같음)
- Unmanaged 클라이언트 프로그램에서 호출했을 경우 Iterop에 의한 약간의 성능 저하
- Managed (.Net)에서 호출시 가장 좋은 성능을 보임
- DTC를 사용하지 않을경우 .Net Library 를 사용하는것이 COM+를 이용하는것 보다 성능이 좋음
: 라이브러리 응용프로그램 패키지에서 실행 권장
: COM+ DTC를 이용하지 않을시는 .Net Library 권장
DCOM & RDS
Add | AddData | |
DCOM(Proxy) | 596 | 200 |
DCOM(RDS.Dataspace) | 295 | 146 |
RDS | 42 | 38 |
'Dev > Windows' 카테고리의 다른 글
VARIANT 에서 객체 추출하기 (0) | 2008.09.09 |
---|---|
ffmpeg (0) | 2008.04.09 |
달라진 기능 (IIS 6.0) (0) | 2007.09.28 |
SQLOLEDB Provider 의 특이한 동작 (0) | 2007.09.20 |
COM+ Queued Components (0) | 2007.08.09 |