Notification Services 프로그래밍 프레임워크
Notification Services 프로그래밍 프레임워크는 XML 또는 관리 코드 및 Transact-SQL을 사용하여 알림 응용 프로그램을 빠르게 개발할 수 있게 해줍니다.
응용 프로그램 개발에서 가장 중요한 작업은 응용 프로그램 속성을 정의하고 응용 프로그램을 호스팅하는 인스턴스를 구성하는 것입니다. 응용 프로그램에서 사용하는 이벤트 공급자, 배달 프로토콜 및 콘텐츠 포맷터에 따라 XSD(XML 스키마) 및 XSLT(Extensible Stylesheet Language Transformation) 파일 정의 또는 사용자 지정 구성 요소 개발과 같은 추가 작업이 필요할 수 있습니다.
또한 대부분의 응용 프로그램에는 사용자 지정 구독 관리 인터페이스가 필요합니다.
개발 옵션
Notification Services 프로그래밍 프레임워크는 응용 프로그램 정의와 인스턴스 구성을 위해 두 가지 방법을 지원합니다.
- ADF(응용 프로그램 정의 파일) 및 ICF(인스턴스 구성 파일)라고 하는 XML 파일로 각각 응용 프로그램을 정의하고 인스턴스를 구성할 수 있습니다. Notification Services Programming Reference에서 XML 참조 항목을 볼 수 있습니다.
- NMO(Notification Management Objects)를 사용하여 프로그래밍 방식으로 응용 프로그램을 정의하고 인스턴스를 구성할 수 있습니다. NMO 개체는 Microsoft.SqlServer.Management.Nmo 네임스페이스에 있습니다.
예제 응용 프로그램은 SQL Server Notification Services 예제를 참조하십시오.
응용 프로그램 정의
응용 프로그램 정의는 응용 프로그램 속성을 설명합니다. Notification Services 응용 프로그램을 정의할 때는 일반적으로 다음 작업을 수행합니다.
- 응용 프로그램 이벤트의 구조를 정의합니다.
- 응용 프로그램 구독의 구조를 정의하고 이벤트 데이터와 구독 데이터를 조인하여 알림을 생성하는 쿼리를 정의합니다.
- 결과 알림 구조, 알림 콘텐츠 포맷터, 알림을 배달하는 데 사용되는 배달 프로토콜 및 재시도 일정과 같은 배달 설정을 정의합니다.
- 이벤트 데이터를 수집하여 응용 프로그램에 전송하는 이벤트 공급자를 정의합니다.
- 생성자 실행 간격을 구성합니다.
- 서식 지정 및 배포를 제어하는 배포자를 정의합니다.
- 새 데이터베이스 또는 기존 데이터베이스로 응용 프로그램 데이터베이스를 정의합니다.
- 응용 프로그램의 작업 설정을 정의합니다.
응용 프로그램 정의 방법은 Notification Services 응용 프로그램 정의를 참조하십시오.
응용 프로그램 정의에 따라 추가 파일을 만들어야 할 수 있습니다. 예를 들어 파일 시스템 감시자 이벤트 공급자를 사용할 때는 XML 이벤트 스키마를 정의하는 XSD 파일을 만들어야 합니다. XSLT 콘텐츠 포맷터를 사용하여 알림에 서식을 지정하도록 선택할 경우 원시 알림 데이터를 읽을 수 있는 메시지로 변환하는 XSLT 파일을 한 개 이상 만들어야 합니다.
또한 표준 이벤트 공급자, 콘텐츠 포맷터 또는 배달 프로토콜이 응용 프로그램의 요구 사항을 충족하지 않을 경우 사용자 지정 구성 요소를 개발할 수 있습니다. 자세한 내용은 사용자 지정 Notification Services 구성 요소 개발을 참조하십시오.
인스턴스 구성
Notification Services 인스턴스는 하나 이상의 응용 프로그램을 호스팅하는 명명된 구성입니다. 구성 파일은 인스턴스의 이름을 정의하고 인스턴스 데이터베이스를 정의하고 인스턴스에서 호스팅하는 응용 프로그램을 명명하고 인스턴스에 대한 데이터베이스, 프로토콜 및 배달 채널을 구성합니다.
인스턴스 구성 방법은 Notification Services 인스턴스 구성을 참조하십시오.
인스턴스 컴파일 및 테스트
Notification Services 응용 프로그램을 테스트할 준비가 되면 인스턴스와 응용 프로그램 데이터베이스를 만드는 인스턴스를 컴파일해야 합니다. 그런 다음 인스턴스를 등록, 설정 및 시작한 후 테스트 데이터를 제출하여 응용 프로그램이 예상대로 작동하는지 확인합니다.
Notification Services 인스턴스 컴파일은 인스턴스 배포와 매우 비슷합니다. Notification Services 인스턴스 배포 방법은 Notification Services 배포를 참조하십시오.
Notification Services는 이벤트 공급자 및 구독 관리 인터페이스를 사용하지 않고 응용 프로그램을 테스트하려는 경우 쉽게 테스트할 수 있도록 다음과 같이 저장 프로시저 및 뷰를 제공합니다.
- 응용 프로그램에서 정의하는 각 이벤트 클래스에 대해 Notification Services에서 이벤트 클래스와 같은 이름의 뷰를 만듭니다. 이러한 뷰에 이벤트를 전송할 수 있습니다. 자세한 내용은 <EventClassName> 뷰를 참조하십시오.
이벤트 전송 저장 프로시저를 사용할 수도 있으며 이는 Notification Services 저장 프로시저(Transact-SQL) 섹션에 설명되어 있습니다. - 정의한 각 구독 클래스에 대해 Notification Services에서 구독 클래스와 같은 이름의 뷰를 만듭니다. 이러한 뷰를 사용하여 구독을 전송할 수 있습니다. 자세한 내용은 NSSubscriberView를 참조하십시오.
- 정의한 각 알림 클래스에 대해 Notification Services에서 알림 클래스와 같은 이름의 뷰를 만듭니다. 이러한 뷰를 사용하여 응용 프로그램에서 생성한 알림을 검토할 수 있습니다. 자세한 내용은 <NotificationClassName> 뷰를 참조하십시오.
Notification Services의 인스턴스를 배포하고 실행하는 데 사용할 수 있는 옵션에 대한 자세한 내용은 Notification Services 배포 옵션을 참조하십시오.
구독 관리 인터페이스 개발
대부분의 Notification Services 응용 프로그램에서는 구독자가 구독을 만드는 데 사용할 수 있는 사용자 지정 구독 관리 인터페이스를 통해 구독 데이터를 가져옵니다. 이러한 인터페이스는 대개 웹이거나 Windows 응용 프로그램입니다.
Notification Services 구독 관리 API를 사용하여 구독 관리 인터페이스를 개발할 수 있습니다. 자세한 내용은 구독 관리 인터페이스 개발을 참조하십시오.
참고 항목
관련 자료
알림 솔루션 빌드
Notification Services 배포
Notification Services 관리