共用方式為


事件集合架構

事件集合是從一或多個來源 (例如:XML 檔案、應用程式或資料庫) 收集事件資料,並將此資訊提交給通知應用程式的程序。這是事件提供者的作業。

每一個應用程式各使用一或多個事件提供者來收集事件。每一個事件提供者使用三種事件 API 的其中一種提交資料給應用程式:事件物件 API、XML API 或 SQL Server API。下圖顯示這些 API 如何運作的高層級檢視。

事件集合架構

  • 事件物件 API 使用 EventEventCollector 物件來提交個別的事件。應用程式使用事件資料表中的欄位名稱,提交 Event 物件給事件收集器,此收集器再將資料寫入事件資料表。
  • XML API 提供大量載入 XML 資料的方式。XML 事件提供者從事件來源收集 XML 文件或資料流,並將資料提交給 XMLEventLoader,後者再將事件寫入事件資料表。
  • SQL Server API 使用預存程序,從資料庫物件載入事件資料。SQL Server 事件提供者有兩種典型的使用方式:使用預存程序來叫用提供者,以及按照排程來執行查詢。事件提供者接收結果集合,並使用 API 預存程序寫入事件資料表。

事件類別檢視

當您建立 Notification Services 執行個體時,Notification Services 會新增一個與事件類別名稱相同的檢視。此檢視是您的通知產生查詢的事件來源。

SQL Server 2005 Notification Services 也支援將事件插入此檢視。將事件插入此檢視會使得 Notification Services 為每一個插入陳述式建立並關閉事件批次。

標準及自訂事件提供者

Notification Services 應用程式開發人員可以使用任何上面列出的 API 來撰寫他們自己的自訂事件提供者,或者可以使用 Notification Services 隨附的其中一個標準的事件提供者。標準的事件提供者可以從監視的資料夾收取 XML 資料,可以查詢 SQL Server 資料庫,而且可以查詢 Analysis Services Cube。如需詳細資訊,請參閱<標準事件提供者>。

自訂的事件提供者則可提供其中一個標準事件提供者無法使用的功能。例如,您可能想要從股票行情看板的逗號分隔檔案收集資料。使用 Notification Services API,開發人員就可以建立具有此功能的事件提供者。如需自訂事件提供者的詳細資訊,請參閱<開發自訂事件提供者>。

裝載與非裝載的事件提供者

事件提供者只有裝載與非裝載兩種類型。

裝載的事件提供者是在 Notification Services 中執行。裝載的事件提供者可以連續不斷地執行,或是按照應用程式定義中定義的排程來執行。這類事件提供者是由 Notification Services 的元件 (稱為事件提供者主機) 所執行。事件提供者主機執行時,所使用的排程與產生器元件相同,此排程是在應用程式定義中指定。

非裝載的事件提供者則以外部應用程式來執行,並按照其本身的排程來提交事件。例如,開放 Web 方法以提交事件的 Internet Information Services (IIS),其所裝載的事件提供者,即為非裝載的事件提供者。在您所撰寫的處理程序內部所裝載的事件提供者,也是非裝載的事件提供者。

事件批次

事件提供者分批次來寫入事件。分批次寫入事件可讓產生器一次將目前的訂閱集與所有事件批次的事件聯結。這種批次導向的處理程序,能夠增進應用程式的效能。

請參閱

概念

訂閱管理架構
訂閱處理架構
通知格式化及傳遞架構

其他資源

Notification Services 檢視
定義事件類別
定義事件提供者

說明及資訊

取得 SQL Server 2005 協助