다음을 통해 공유


COM+ 1.5의 새로운 기능

COM+ 버전 1.5는 개발자와 시스템 관리자 모두에 대한 COM+ 애플리케이션의 전반적인 확장성, 가용성 및 관리 가능성을 높이기 위해 설계된 새로운 기능을 추가합니다.

COM+ 1.5는 Windows XP 및 Windows Server 2003부터 사용할 수 있습니다. 새로운 COM+ 1.5 기능은 Windows 2000에서 사용할 수 없습니다.

Application-Level 액세스 확인이 기본적으로 사용하도록 설정됨

시스템 보안 강화의 일환으로 COM+ 애플리케이션을 만들 때 기본적으로 액세스 검사가 사용하도록 설정됩니다. 이전 버전에서 액세스 검사는 기본적으로 애플리케이션 수준에서 사용하지 않도록 설정되었으며 기본적으로 구성 요소 수준에서 사용하도록 설정되었습니다. Windows Server 2003부터 액세스 검사는 기본적으로 애플리케이션 수준에서 사용하도록 설정되며 기본적으로 구성 요소 수준에서 사용하지 않도록 설정됩니다. 기본 설정을 변경하는 방법에 대한 자세한 내용과 절차는 새 COM+ 애플리케이션 만들기, 애플리케이션에 대한액세스 검사 사용 및 구성 요소 수준에서 액세스 검사 사용을 참조하세요.

애플리케이션 풀링

Applications 컬렉션에 있는 COMAdminCatalogObject 개체의 새 ConcurrentApps 속성을 사용하여 COM+ Application Pooling은 단일 스레드 프로세스에 대한 확장성을 추가하고 새 COM+ 애플리케이션 재활용 서비스와 통합합니다. 자세한 내용은 COM+ 애플리케이션 풀링을 참조하세요.

애플리케이션 재활용

애플리케이션 재활용은 애플리케이션의 전반적인 안정성을 크게 향상합니다. 대부분의 애플리케이션의 성능은 메모리 누수, 타사 코드에 대한 의존도 및 스케일링할 수 없는 리소스 사용과 같은 요인으로 인해 시간이 지남에 따라 저하될 수 있으므로 COM+ 애플리케이션 재활용은 애플리케이션과 연결된 프로세스를 정상적으로 종료하고 다시 시작하는 간단한 솔루션을 제공합니다. 자세한 내용은 COM+ 애플리케이션 재활용 을 참조하세요. 또한 프로세스 재활용을 구성하기 위한 단계별 절차는 구성 요소 서비스 관리 도움말의 "프로세스 재활용 구성"을 참조하세요.

COM+ 파티션

이 릴리스에서 COM+는 여러 버전의 COM+ 애플리케이션을 동일한 컴퓨터에 설치하고 구성할 수 있는 기능인 COM+ 파티션에 대한 지원을 소개합니다. 이 기능을 사용하면 여러 서버를 사용하여 다양한 버전의 애플리케이션을 관리하는 데 드는 비용과 시간을 절약할 수 있습니다. 단일 컴퓨터에서 각 파티션은 사실상 가상 서버로 작동합니다. 각 파티션에 애플리케이션을 설치한 후 사용자를 논리 서버에 매핑하는 파티션 집합을 만듭니다. COM+ 파티션을 설정하고 관리하는 방법에 대한 자세한 내용은 COM+ 파티션을 참조하세요. 단계별 절차는 구성 요소 서비스 관리 도움말에서 "애플리케이션 파티션 관리"를 참조하세요.

구성 요소가 없는 COM+ 서비스

COM+ 1.5를 사용하면 해당 서비스를 호출하는 메서드를 포함하는 구성 요소를 빌드할 필요 없이 COM+에서 제공하는 서비스를 사용할 수 있습니다. 이는 일반적으로 구성 요소를 사용하지 않지만 트랜잭션 또는 COM+ 추적기 같은 COM+ 서비스를 사용하려는 개발자에게 큰 이점을 제공합니다. 구성 요소 없이 COM+ 서비스를 사용하면 개발자는 필요한 COM+ 서비스에만 액세스하는 데 사용되는 구성 요소를 만드는 오버헤드를 방지할 수 있습니다. 자세한 내용은 구성 요소가 없는 COM+ 서비스를 참조하세요.

COM+ SOAP 서비스

COM+ 1.5를 사용하면 이제 COM+ 애플리케이션을 XML 웹 서비스로 노출할 수 있습니다. COM+를 사용하여 배포되었는지 여부에 관계없이 XML 웹 서비스를 COM 구성 요소로 투명하게 사용할 수도 있습니다. 즉, 기존 COM+ 애플리케이션에서 새 XML 웹 서비스를 쉽게 만들고 XML 웹 서비스를 새 COM+ 애플리케이션에 쉽게 통합할 수 있습니다. 자세한 내용은 COM+ SOAP 서비스를 참조하세요.

구성 가능한 격리 수준

COM+ 개발자는 새 TxIsolationLevel 속성 또는 Component Services 관리 도구를 사용하여 필요에 따라 애플리케이션의 격리 수준을 구성하여 동시성, 성능 및 확장성을 높일 수 있습니다. 이러한 유연성을 통해 적절한 양의 전문 지식을 가진 사용자는 애플리케이션에서 마지막 온스의 처리량을 얻을 수 있습니다. 자세한 내용은 트랜잭션 격리 수준 구성 을 참조하세요.

프라이빗 구성 요소 만들기

애플리케이션에 해당 애플리케이션 내의 다른 구성 요소에서만 호출되도록 하는 여러 도우미 구성 요소가 있는 시나리오에서 COM+의 이 릴리스를 사용하면 새 속성 IsPrivateComponent를 사용하여 이러한 구성 요소를 프라이빗으로 표시할 수 있습니다. (COM+의 이전 릴리스에서는 COM+ 서비스에 액세스할 수 있도록 모든 구성 요소가 공용이어야 했습니다. 즉, 이러한 구성 요소가 다른 애플리케이션에서 활성화될 수 있습니다.) 프라이빗 구성 요소는 동일한 애플리케이션의 다른 구성 요소에서만 보고 활성화할 수 있으므로 노출할 기능을 보다 자세히 제어할 수 있습니다. 애플리케이션 외부에서 액세스할 수 없지만 모든 COM+ 서비스를 계속 활용할 수 있는 프라이빗 구성 요소를 사용하는 동안에는 공용 구성 요소를 문서화하고 유지 관리하기만 하면 됩니다.

DTC 보안 설정

분산 트랜잭션 관리를 위해 보안 수준을 사용자 지정할 수 있도록 Microsoft DTC(Distributed Transaction Coordinator)에 대한 몇 가지 새로운 보안 설정이 추가되었습니다. 이러한 설정 및 구현 방법에 대한 DTC 보안 고려 사항을 참조하세요.

상호 인증을 용이하게 하기 위해 DTC는 NetworkService 계정으로 실행되도록 제한됩니다. 자세한 내용은 계정 및 권한 관리를 참조하세요.

XA 데이터베이스를 사용한 복구의 경우 NetworkService 계정에 이 복구를 수행하는 데 필요한 권한과 역할을 제공하는 것이 좋습니다. 이 작업을 수행하는 정확한 방법은 각 데이터베이스에만 적용됩니다. 자세한 내용은 네이티브 분산 트랜잭션 비활성화 및 TIP 및 XA 트랜잭션 사용 안 을 참조하세요.

XA 트랜잭션을 사용할 때 보다 안전한 시스템을 제공하기 위해 Windows Server 2003 플랫폼에는 XA DLL 파일을 지정하기 위한 새 레지스트리 항목이 포함되어 있습니다. Windows Server 2003으로 업그레이드할 때 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\XADLL아래에 레지스트리 항목을 만들어 이전과 같이 XA 트랜잭션을 사용할 수 있습니다. 여기서 값 이름은 DLL의 이름( dllname.dll 형식)이며 값은 DLL 파일의 전체 경로입니다. 사용 중인 각 XA DLL 파일에 대한 항목을 만들어야 합니다. DTC를 실행하는 컴퓨터가 클러스터의 일부인 경우 클러스터의 각 노드에 대해 레지스트리 항목을 만들어야 합니다. 자세한 내용은 XA 트랜잭션 관리를 참조하세요.

Low-Memory 정품 인증 게이트

이 릴리스에서 COM+는 COM+ 서버 또는 개체를 만들기 전에 자동으로 메모리를 확인합니다. 애플리케이션에 사용할 수 있는 가상 메모리의 백분율이 고정 임계값보다 낮으면 개체를 만들기 전에 활성화가 실패합니다. 일반적으로 실행되는 이러한 활성화에 실패하면 COM+ Low-Memory Activation Gates 서비스가 시스템 안정성을 크게 향상시킵니다.

COM 구성 요소 이동 및 복사

이 릴리스에서는 COM+를 사용하여 구성 요소를 이동하고 복사할 수 있습니다. 즉, 여러 번 구성 요소의 단일 물리적 구현을 구성할 수 있습니다. 소스 코드 수준이 아닌 이진 수준에서 구성 요소를 재사용하면 코드가 줄어들고 개발 비용이 절감되며 출시 시간이 빨라집니다. 자세한 내용은 구성 요소 이동구성 요소 복사 를 참조하세요.

네트워크 액세스

COM+ 네트워크 액세스는 기본적으로 Windows Server 2003에서 사용하지 않도록 설정됩니다. 즉, COM+는 기본적으로 로컬에서만 사용할 수 있습니다. 다음 절차에 따라 네트워크 COM+ 액세스를 사용하도록 설정합니다.

네트워크 COM+ 액세스를 사용하도록 설정하려면

  1. 시작 메뉴에서 제어판 가리킨 다음 프로그램 추가 또는 제거를 선택합니다.

  2. Windows 구성 요소 추가/제거를 클릭합니다.

  3. 애플리케이션 서버 를 선택하고 자세히를 클릭합니다.

  4. 네트워크 COM+ 액세스 사용 옆의 확인란을 선택한 다음 확인을 클릭합니다.

  5. 다음을 클릭하여 Windows 구성 요소 마법사를 완료합니다.

  6. 마침을 클릭하여 마법사를 닫습니다.

DTC 네트워크 트랜잭션 액세스는 Windows Server 2003에서 기본적으로 사용하지 않도록 설정됩니다. 이러한 플랫폼에서 DTC는 기본적으로 로컬 트랜잭션만 수행할 수 있습니다. 다음 절차에 따라 네트워크 DTC 액세스를 사용하도록 설정합니다.

참고

구성 요소 서비스 관리 도구를 사용하거나 COM+ 관리 라이브러리를 통해 프로그래밍 방식으로 네트워크 DTC 액세스를 사용하도록 설정할 수도 있습니다. 절차 정보는 구성 요소 서비스 관리 도움말의 "DTC 보안 구성"을 참조하세요.

네트워크 DTC 액세스를 사용하도록 설정하려면

  1. 시작 메뉴에서 제어판 가리킨 다음 프로그램 추가 또는 제거를 선택합니다.

  2. Windows 구성 요소 추가/제거를 클릭합니다.

  3. 애플리케이션 서버 를 선택하고 자세히를 클릭합니다.

  4. 네트워크 DTC 액세스 사용 옆의 확인란을 선택한 다음 확인을 클릭합니다.

  5. 다음을 클릭하여 Windows 구성 요소 마법사를 완료합니다.

  6. 마침을 클릭하여 마법사를 닫습니다.

애플리케이션 일시 중지 및 비활성화

이제 COM+ 애플리케이션을 더 쉽게 관리할 수 있습니다. 관리자는 COM+ 서버 애플리케이션을 일시 중지 및 다시 시작하거나 COM+ 라이브러리 또는 서버 애플리케이션 또는 구성된 개별 구성 요소를 사용하지 않도록 설정하고 사용하도록 설정할 수 있습니다. 일시 중지 및 비활성화 기능은 모두 기존 구성 요소 인스턴스에 영향을 주지 않고 향후 활성화를 방지합니다. 자세한 내용은 구성 요소 서비스 관리 도움말의 "COM+ 애플리케이션 관리"를 참조하세요.

프로세스 덤핑

프로덕션 환경에서 애플리케이션 문제를 해결하는 것은 쉽지 않습니다. 실행 중인 프로세스를 방해하지 않고 문제에 대한 정보를 수집하려면 어떻게 해야 합니까? COM+는 이제 새 프로세스 덤프 기능을 통해 솔루션을 제공합니다. 이 기능을 사용하면 시스템 관리자가 프로세스를 종료하지 않고 프로세스의 전체 상태를 덤프할 수 있습니다. 자세한 내용은 구성 요소 서비스 관리 도움말에서 "COM+ 애플리케이션 디버깅을 위한 프로세스 덤프 도구 관리"를 참조하세요.

프로세스 초기화

많은 서버 애플리케이션이 시작 및 종료될 때 특정 초기화 및 정리를 수행해야 합니다. Windows Server 2003에서 실행하는 경우 IProcessInitializer 인터페이스를 구현하는 클래스를 만들 수 있습니다. 프로세스가 시작되면 IProcessInitializer::Startup 을 호출하고 종료할 때 IProcessInitializer::Shutdown을 호출합니다. 이렇게 하면 구성 요소에서 연결, 파일 및 캐시 초기화와 같은 필요한 작업을 수행할 수 있습니다.

COM+ 애플리케이션을 NT 서비스로 실행

COM+ 개발자는 이제 Component Services 관리 도구를 사용하여 COM+ 서버 애플리케이션을 NT 서비스로 구성하고 구현할 수 있습니다. 즉, 애플리케이션을 항상 실행해야 하는 경우 서버를 자동으로 시작하거나 다시 시작할 수 있습니다. COM+ 애플리케이션이 권한 있는 작업을 수행해야 하는 경우 로컬 시스템 계정으로 실행할 수 있습니다. 애플리케이션의 종속 서비스를 자동으로 시작할 수 있습니다. 자세한 내용은 서비스 애플리케이션으로 실행 중인 COM+ 애플리케이션 을 참조하세요.

Side-by-Side 어셈블리

SxS(Side-by-Side) 어셈블리를 사용하면 애플리케이션이 MDAC, MFS, MSVCRT 또는 MSXML과 같이 사용할 시스템 DLL 또는 클래식 COM 구성 요소의 버전을 지정할 수 있습니다. 예를 들어 ASP 애플리케이션이 MSXML 버전 2.0을 사용하는 경우 서비스 팩이 서버에 적용된 후에도 이 애플리케이션이 MSXML 버전 2.0을 계속 사용하는지 확인할 수 있습니다. 즉, 컴퓨터에 새 버전의 MSXML이 설치되어 있더라도 버전 2.0은 그대로 유지되며 애플리케이션에서 사용됩니다.

SxS 어셈블리를 구성하려면 DLL에 대한 경로와 DLL을 사용해야 하는 모든 가상 디렉터리에 COM+ 매니페스트 파일이 있는지 알고 있어야 합니다. COM+ 매니페스트는 DLL이 설치된 위치에 대한 정보가 있는 XML 파일입니다. 매니페스트는 애플리케이션에 대한 활성화 컨텍스트를 만드는 데 사용됩니다. 활성화 컨텍스트를 사용하면 애플리케이션이 특정 DLL 버전, COM 개체 instance 또는 사용자 지정 창 버전을 로드할 수 있습니다. Component Services 관리 도구 또는 ApplicationDirectory 속성을 사용하여 유효한 SxS 어셈블리 매니페스트 파일이 포함된 애플리케이션 루트 디렉터리의 전체 경로를 입력할 수 있습니다. 자세한 내용은 격리된 애플리케이션 및 병렬 어셈블리를 참조하세요.

Windows 오류 보고

COM+ 1.5에는 Windows XP부터 사용할 수 있는 WER(Windows 오류 보고) 구성 요소에 대한 지원이 포함되어 있습니다. WER을 사용하면 사용자가 애플리케이션 오류, 커널 오류 및 응답하지 않는 애플리케이션에 대해 Microsoft에 알릴 수 있습니다. 이러한 알림을 통해 Microsoft 고객 지원 팀은 기술 문제를 보다 효과적으로 해결할 수 있습니다. 또한 Windows 오류 보고 구성 요소를 사용하면 COM+ 개발자가 애플리케이션을 개선하는 데 사용할 수 있는 정보를 받을 수 있습니다. 자세한 내용은 Windows 오류 보고를 참조하세요.