Home

Search

FAQs

Downloads

Newsgroups

Customer Service

Send

Print

Help

Microsoft Knowledge Base Article - 253669

Comments?

Provide us with feedback on this article

Other Support Options

Contact Microsoft
Phone Numbers, Support Options and Pricing, Online Help, and more.

Customer Service
For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.

Newsgroups
Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.

INFO: COM+ 1.0의 새로운 기능

본 문서의 정보는 다음의 제품에 적용됩니다.

Microsoft COM+ 1.0

이 문서는 이전에 다음 ID로 출판되었음: KR253669

요약
본 문서에서는 COM+ 1.0에서 도입된 COM 및 Microsoft Transaction Server의
주요 변경 내용을 중점적으로 설명합니다.

추가 정보

구성 요소 서비스

대기 중인 구성 요소(QC)
대기 중인 구성 요소 서비스를 이용하여 좀더 쉽게 비동기 오프라인 응용 프로그램을 개발할 수 있습니다.
클라이언트는 메서드 호출이 실행되지 않고 클라이언트에 "기록"된 다음 Microsoft Message Queue Server(MSMQ)에 의해
투명하게 서버로 전파되도록 특수한 방법으로 서버 개체의 인스턴스를 만들 수 있습니다. 전파된 메서드 호출은 서버 개체에서 "재생"되고 그
구현이 실행됩니다.

대기 중인 구성 요소는 완전한 클라이언트 쪽 및 서버 쪽 예외 처리를 제공합니다. 또한, 트랜잭션의
전송과 수신을 통해 메시지의 송신과 수신을 투명하게 통합합니다.
MSDN: 대기 중인 구성 요소

COM+ 대기 중인 구성 요소에 대한 모든 기술 자료 문서를 보려면 여기를 누르십시오.
LCE(Loosely Coupled Events):
새로 도입된 COM+ LCE(Loosely Coupled Events) 서비스를 사용하여 메서드 호출을
전파할 수 있습니다. 이 경우 특정 인터페이스를 지원하는 클래스는 "이벤트 클래스"로 표시되며 다른 클래스는 이 이벤트의 "구독자"로
구성됩니다. 게시자인 클라이언트가 이벤트 클래스에서 인터페이스의 메서드를 호출할 때마다 모든 구독자 개체가 호출을 수신합니다. 관리 방식으로
또는 실행 시에 구독자를 추가할 수 있습니다.

이 서비스는 순차적 이벤트 또는 병렬 이벤트 시작, 런타임 구독, 구독자
필터링, 게시자에 의한 구독자 정밀 제어와 같은 고급 옵션을 가지고 있습니다.

MSDN: COM+ 이벤트

COM+ 이벤트 기술 자료 문서를 보려면 여기를 누르십시오.
개체 생성자
COM+를 사용하면 개체는 관리 콘솔에서 지정한 문자열을 생성 시에 검색할 수 있습니다. 이 기능을 이용하면
많은 경우에서 구성 요소가 레지스트리 문자열이나 INI 파일을 로드할 필요가 없습니다. 또한, 개발자는 이 기능을 통해 전체를 다시 컴파일하지
않고 문자열 내용에 따라 관리 방식으로 개체의 동작을 지정할 수 있습니다.
MSDN: 개체 생성자 문자열 사용

246138 HOWTO: Visual Basic에서 COM+ 1.0 생성자 문자열 사용

생성자 COM+ 기술 자료 문서를 보려면 여기를 누르십시오.
개체 풀링(Object Pooling)
개체 풀링을 사용하여 특정 개체를 공유 가능한 리소스로 구성할 수 있습니다. COM+가 인스턴스 풀을
관리하고 필요할 때 인스턴스를 제공하므로 매 번 개체를 생성하고 소멸할 필요가 없습니다. 풀의 최소 및 최대 크기를 지정하고 풀링되는 개체의
생성 시간 제한을 구성할 수 있습니다. 풀링되는 개체는 스레드 중립(Thread Neutral)이어야 합니다.

참고: Microsoft Visual Basic 6.0은 이러한 형식의 개체를 만들 수 없습니다.
MSDN: COM+ 개체 풀링
구성 가능한 JIT(Just-in-Time) 활성화
COM+에서 Just-In-Time 활성화를 지원하도록 구성 요소를 구성할 수 있습니다. 개체가 이와 같이
구성되면 작업이 완료되었을 때 개체를 비활성화하도록 개체의 메서드를 구성할 수 있습니다. 이렇게 하면 좀더 관리적인 방식으로 JIT를 지정할
수 있으며, COM+가 개체를 비활성화하고, 메서드가 성공한 경우 트랜잭션을 커밋하거나 메서드가 오류를 반환한 경우 트랜잭션을 중지하므로
SetComplete/SetAbort를 호출할 필요가 없습니다.

참고: 메서드 수준 구성을 검사하기 전에 JIT를 지원하도록 개체를 디자인했는지 확인해야 합니다.
MSDN: JIT(Just-in-Time) 활성화
COM+ 1.0 Services Type Library에서의 ObjectContext와 Shared Property Manager
Microsoft Transaction Server(MTS)에서는 대개 MTS 개체 및 인터페이스를 위한
형식 라이브러리와 Shared Property Manager를 위한 형식 라이브러리 등, 두 개의 형식 라이브러리를 사용했습니다. 그러나
COM+에서는 두 형식 라이브러리가 모두 COM+ 1.0 Services Type Library에 포함되었습니다.
MSDN: 공유 속성 관리자
CreateInstance와 CreateObject
COM+에서는 DLLHOST 내에서 CreateObject 또는 CoCreateInstance(Ex)를 사용할 때 자식 개체가 부모 개체의 컨텍스트를 상속합니다. 따라서,
ObjectContext.CreateInstance가 더 이상 필요하지 않습니다.

더 이상 필요 없는 SafeRef
MTS와 달리 COM+에서는 개체가 자신을 참조해야 하는 비정상적인 상황에서 SafRef를 사용할 필요가 없습니다.

트랜잭션

트랜잭션 시간 제한을 정밀하게 구성
MTS에서는 컴퓨터 수준에서 트랜잭션 시간 제한을 구성할 수 있었습니다. 그러나, COM+에서는 트랜잭션이나
새 트랜잭션을 필요로 하는 개체에 서로 다른 트랜잭션 시간 제한을 지정할 수 있습니다. 이 기능은 실행에 시간이 오래 걸리는 배치 저장
프로시저에 강제로 짧은 트랜잭션을 적용하는 시간 제한 시나리오 충돌을 해결해 줍니다.

ObjectContext에서 사용할 수 있는 풍부한 속성 및 제어
MTS에서는 트랜잭션 상태를 쿼리(IsInTransaction)하고
SetComplet/SetAbort/DisableCommit/EnableCommit를 호출할 수 있었습니다. COM+에서는
ContextInfo라는 새 속성이 ObjectContext에 추가되었습니다. 이 속성을 사용하여 트랜잭션 ID를 검색하고 현재
ITransaction의 참조를 얻은 다음, 좀더 정밀한 트랜잭션 제어와 BYOT(아래 항목 참조)를 위해 사용할 수 있습니다.
MSDN: ContextInfo
BYOT(Bring Your Own Transactions)
COM+ 구성 요소는 BYOT(Bring Your Own Transactions)를 통해 기존
Microsoft Distributed Transaction Coordinator(DTC) 또는 트랜잭션 인터넷 프로토콜(TIP) 트랜잭션을
새 구성 요소 컨텍스트의 트랜잭션 속성으로 설정할 수 있습니다. 이를 통해 COM+ 구성 요소를 트랜잭션 처리(TP) 모니터, 개체 트랜잭션
서비스(OTS) 또는 데이터베이스 관리 시스템(DBMS)이 그 수명을 제어하는 트랜잭션과 연결할 수 있습니다. BYOT는 TIP에 의해
조정되는 트랜잭션과 통합할 때도 유용합니다.
MSDN: BYOT
리소스 보상 관리자(CRM)
구성 요소 서비스의 리소스 보상 관리자(CRM) 기능은 응용 프로그램 리소스를 빠르고 쉽게 DTC 트랜잭션과
통합하는 방법을 제공합니다. 전체 Microsoft Transaction Services 리소스 관리자를 개발하지 않고 이 기능을 대신 사용할
수 있습니다. 한 쌍의 COM 구성 요소를 개발하고 특정 인터페이스를 구현함으로써 응용 프로그램 리소스를 트랜잭션 결과에 투자하고 트랜잭션
결과의 최종 알림을 수신할 수 있습니다. 응용 프로그램 리소스가 실패한 레코드를 작성할 수 있도록 지속적인 로그가 제공됩니다. 응용 프로그램이
다시 시작될 때 CRM 기능이 이 로그 파일을 사용하여 자동으로 복구를 수행합니다.
MSDN: 리소스 보상 관리자
동시성, 동기화 및 스레딩 모델 개선
COM+는 동시성 관리, 동기화, 스레딩 모델을 위한 새 옵션을 제공합니다. 스레드 중립 스레딩 모델이 새로
도입되었습니다. 또한, Microsoft Visual C++에서 비동기 호출을 수행할 수도 있습니다. 자세한 내용은 아래 문서를 참조하십시오.

MSDN: COM+의 동시성 및 스레딩

보안

메서드 수준 역할 설정
COM+에서는 메서드 수준에서 개체 안으로 호출할 수 있는 역할을 설정할 수 있습니다. 이 기능을 이용하면
훨씬 유연한 보안 구성이 가능하며 개체 간에 좀더 쉽게 기능을 배포할 수 있습니다. COM+에서는 개체를 활성화하고, 개체 인터페이스를 얻고
메서드를 호출하도록 관리 방식으로 역할을 설정할 수 있습니다.
MSDN: 역할 기반 보안 구성
더욱 풍부한 ObjectContext의 속성
ObjectContext는 직접 호출자, 작성자, 인증 수준에 대한 상세한 정보와 전체 작업 스택에 대한
기타 정보를 제공하는 SecurityCallContext 개체를 제공합니다. ObjectContext를 사용하여 실행 시에 사용자 이름,
사용자 보안 식별자(SID), 인증 수준 및 서비스를 확인할 수도 있습니다.
MSDN: SecurityCallContext 개체
위임 수준 가장
이 기능을 사용하면 원격 요청인 경우에도 개체가 호출자의 ID에서 실행할 수 있습니다. 이러한 방법으로 외부
리소스에 Windows NT 보안을 지정할 수 있으며, 사용 중인 ID를 기준으로 개체에 대한 액세스가 허용되거나 거부됩니다.
MSDN: 위임 및 가장

개발 관리 및 배포

COM+와 DCOMCNFG 통합
DCOM 구성이 내 컴퓨터 등록 정보에 통합되었고 COM+ Administration 개체에서 이 구성을 사용할 수 있으므로 도구를 전환할
필요가 없습니다.

Visual Basic에서의 좀더 쉬워진 디버깅
중단점 설정, 복수의 DLL 디버깅, Class_Initialize와 Class_Terminate의 예상치
않은 동작 등과 관련된 문제점이 해결되었을 뿐만 아니라 Visual Basic COM+ 구성 요소를 좀더 쉽게 디버깅할 수 있는 다른 기능도
추가되었습니다.
MSDN: COM+ Visual Basic 디버깅 지원이 MTS와 대조된다
풍부한 카탈로그 개체
COM+ Administration 개체와 컬렉션이 모든 새 구성 정보와 작업을 제공하므로 아무리 복잡한
작업이라도 모든 일반 관리 작업을 스크립트로 작성할 수 있습니다.
MSDN: 프로그래머의 참조, COM+ 관리의 자동화
MMC의 풍부한 상태 정보
구성 요소 서비스를 위한 Microsoft Management Console(MMC) 스냅인은 실행 시 훨씬
더 많은 정보를 제공합니다. 응용 프로그램 프로세스 PID와 풀링되는 개체의 수는 특히 주목할 항목입니다.

Mtx.exe 대신 Dllhost.exe 사용
COM+ 응용 프로그램의 프로세스 이름은 Dllhost.exe입니다. 이와 달리 MTS에서는 프로세스 이름이 Mtx.exe였습니다.

기타 Windows 2000 서비스

XML 파서와 Microsoft Data Access Components 2.5
Windows 2000에는 XML 문서를 만들고, 작업하고, 변환하고 쿼리하는 데 사용할 수 있는 XML
파서가 포함되어 있습니다. Windows 2000에는 Microsoft Data Access Components(MDAC) 2.5도 포함되어
있습니다. 이 새 버전에서는 ActiveX Data Objects(ADO)가 XML과 좀더 밀접하게 통합되고, 명명된 리소스에 대한 URL
지원이 개선되었으며, 향상된 계층적 탐색 모델을 사용합니다.
MSDN 온라인 XML 개발자 센터

Universal Data Access
DTC 성능 모니터 카운터
이들 DTC 카운터를 사용하여 활성 연결의 수, 초 당 처리되는 트랜잭션의 수, 문제가 있는 트랜잭션의 수
등을 언제든지 모니터링할 수 있습니다. 성능 모니터가 이러한 정보를 관리하므로 임계값에 대한 경보, 경고 및 알림을 설정할 수
있습니다.

클라이언트에서 Windows Installer 기반 "끌어오기(Pull)" 설치
Active Directory를 적절하게 구성하여 Windows 2000이 제공하는 "클래스
저장소(Class Store)" 서비스를 이용할 수 있습니다. 이 서비스를 사용할 때 클라이언트는 사용자 인터페이스 응용 프로그램 및 구성
요소 참조를 처음부터 설치하거나 업데이트/수정 프로그램 버전을 설치할 수 있습니다. 응용 프로그램에서 CreateObject를 호출하거나 응용
프로그램 아이콘을 두 번 누르면 모든 설치 작업이 수행됩니다.
MSDN: COM 및 COM+ 구성 요소 게시
터미널 서비스를 원격 관리 도구로 사용
Windows 2000 Sever에서 원격 관리를 좀더 쉽게 수행할 수 있도록 Microsoft
Terminal Server를 구성할 수 있습니다. 또한, 터미널 관리가 서버의 서비스 품질에 영향을 미치지 않도록 특별히 이 작업을 위한
터미널 서버를 구성할 수도 있습니다. 결합 관리(Joint-Administration)와 헬프데스크 시나리오를 사용할 수 있도록 다른 사용자의
셰션을 제어하기 위해 터미널 서비스를 사용할 수도 있습니다.
Terminal Services를 사용한 Windows 2000 Server 제품군 원격 관리

232792 터미널 서비스 원격 제어 기능을 사용하는 방법

참조
MSDN - COM+ 포털 사이트:
http://msdn.microsoft.com/library/psdk/cossdk/complusportal_9o9x.htm

COM+ 리소스 CD 온라인:
http://www.microsoft.com/com/resources/compluscd/default.asp?RLD=59

Windows DNA 포털 사이트:
http://www.microsoft.com/dna/default.asp

모든 COM+ 기술 자료 문서를 보려면 여기를 누르십시오.

Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

최종수정일:

2003-04-30

키워드:

kbCOMPlusLCE kbComPlusQC kbDTC kbinfo kbSysAdmin KB253669 kbAudDeveloper

Send

Print

Help

Last reviewed
Wednesday, April 30, 2003

© 2003 Microsoft Corporation. All rights reserved.  Terms of use  Security & Privacy  Accessibility