共用方式為


指定多重傳遞的摘要

Notification Services 會提供摘要和多重傳遞這兩個選項來彙總通知。摘要傳遞把針對單訂閱者的訊息,組合為一則訊息。多重傳遞 是藉由下列動作來保存內容格式器資源:辦識何時會傳送相同的通知給多個訂閱者、將通知進行一次格式化、然後傳送該通知。

ms172624.note(zh-tw,SQL.90).gif重要事項:
您可以使用摘要傳遞,也可以使用多重傳遞,不過兩者不能同時並用。

本主題將描述摘要傳遞和多重傳遞,以及如何設定這兩個選項。

摘要傳遞

有的應用程式可以針對同一個通知批次中的單一訂閱者,產生多項通知。若要減少傳送給個別訂閱者的訊息數,可以啟用摘要傳遞,它把類似的通知都組合成一則摘要訊息。

只要針對通知類別啟用摘要傳遞,則單一通知批次中所有的通知,都會被視為摘要傳遞。對於一個批次中,所有在任何摘要通知欄位具有同樣訂閱者識別碼、地區設定、裝置和資料的通知,Notification Services 都會將個別通知結合為一個摘要通知,然後將這些資料全部傳送到內容格式器,讓它傳回一個格式化的結果。

構成摘要通知的集合中,第一個通知稱為摘要標頭通知,其餘的通知則稱為摘要結尾通知。訊息內文是由從所有通知彙總的資訊所組成。

下表代表一個通知類別的簡化通知表。在這個通知類別中,[州] 欄位的摘要分組屬性被設為 true,因此其欄位是摘要分組的依據。粗體資料列代表要組合到摘要訊息中的通知。

通知識別碼 訂閱者識別碼 裝置名稱 訂閱者地區設定 縣/市

1

Bob

e-mail

en-US

Seattle

WA

2

Alan

e-mail

en-US

Seattle

WA

3

Bob

e-mail

en-US

Spokane

WA

4

Bob

e-mail

en-US

San Francisco

CA

5

Bob

file

en-US

Tacoma

WA

在這個範例中,[訂閱者識別碼][裝置名稱][訂閱者地區設定][州] 資料行的值必須一樣,Notification Services 才能將通知組成一個摘要。第 1 個和第 3 個通知符合這個比對準則,因此組成一個摘要。第 2 個通知的訂閱者不同,第 4 個通知的州不同,而第 5 個通知的裝置不同,因此根據本表的資料,這些通知都不會組合起來。

若要啟用摘要傳遞

如果您要利用 XML 來定義應用程式,請在應用程式定義檔案 (ADF) 的 NotificationClass 元素中,啟用摘要傳遞。如果您是以程式設計的方式定義應用程式,請利用 Notification Services Management Objects (NMO) 來啟用摘要傳遞。

多重傳遞

ms172624.note(zh-tw,SQL.90).gif附註:
SQL Server 2005 Standard Edition 不支援多重傳遞。

如果您的應用程式很可能會針對多個訂閱者產生同樣的通知資料,則可以啟用多重傳遞,讓內容格式器對通知統一進行一次格式化作業,再將該通知傳送到訂閱者清單。

對於啟用多重傳遞的通知類別來說,散發者會利用這些動作,將多重傳遞通知格式化:

  1. 散發者是根據裝置、地區設定和通知欄位的值,來排列資料表的資料列。
  2. 散發者開始讀取資料列。只要相關的資料行值相同,散發者就會將訂閱者資訊加入多重傳遞清單中。您可以限制每個多重傳遞訊息的訂閱者數目。如需詳細資訊,請參閱<指定傳遞通訊協定名稱與欄位>。
  3. 只要散發者遇到相關資料行值不同的資料列,就會將前一組資料行值傳給內容格式器,將格式化的輸出 (連同訂閱者清單) 交給傳遞通訊協定。

下表所顯示的,是示範摘要傳遞所用的同一份通知資料。這一次,裝置、地區設定和所有的通知欄位,都是決定哪些通知是多重傳遞通知的依據。

通知識別碼 訂閱者識別碼 裝置名稱 訂閱者地區設定 縣/市

1

Bob

e-mail

en-US

Seattle

WA

2

Alan

e-mail

en-US

Seattle

WA

3

Bob

e-mail

en-US

Spokane

WA

4

Bob

e-mail

en-US

San Francisco

CA

5

Bob

file

en-US

Tacoma

WA

第 1 個和第 2 個通知的 [縣/市][州] 資料相同,但是訂閱者不一樣。如果有啟用多重傳遞,Notification Services 會將第 1 個通知格式化,然後將格式化的訊息連同收件人清單 (Bob 和 Alan) 傳給傳遞通訊協定。不過,因為第 3 個、第 4 個和第 5 個通知的 [縣/市][州] 資料都不同,因此這些通知都不是多重傳遞。

多重傳遞的考量

訂閱者不會感覺到多重傳遞的進行。實際傳送通知訊息的網路通訊協定,不必支援多重傳遞。

啟用多重傳遞時,傳遞通訊協定會收到格式化的訊息一次,以及一份訂閱者資訊清單。傳遞通訊協定必須能夠使用收件者清單,將格式化的訊息傳送給多個訂閱者。它也可以傳送一則訊息 (如果網路通訊協定支援 true 多重傳遞的話),或者只要將同一則訊息,重複傳給訂閱者清單中的每個訂閱者即可。

標準傳遞通訊協定支援多重傳遞。如果您是使用協力廠商傳遞通訊協定,請連絡開發人員,判斷傳遞通訊協定是否支援多重傳遞。

同時,若要讓多重傳遞正常運作,多重傳遞通知絕不能含有任何訂閱者專屬的資訊,因為它是把同樣的格式化輸出,傳給多個訂閱者。散發者不會傳遞任何收件者資訊到內容格式器。如果內容格式器被程式設定為使用收件者資訊來進行格式化,作業不會成功。

但是在進行格式化處理序時,Notification Services 無法避免訂閱者專屬資訊,從外部資料來源合併到通知資料中。請確定內容格式器加入通知資料中的外部資訊,並非收件者專屬的資訊。

若要啟用多重傳遞

如果您是利用 XML 來定義應用程式,請在應用程式定義檔案 (ADF) 的 NotificationClass 元素中,啟用多重傳遞。如果您是以程式設計的方式定義應用程式,請利用 NMO 來啟用多重傳遞。

請參閱

概念

開發自訂的內容格式器
部署自訂傳遞通訊協定
定義通知結構描述
設定內容格式器
指定通知批次大小
指定通知過期保留天數
指定傳遞通訊協定名稱與欄位

其他資源

定義通知類別
設定傳遞通訊協定
定義通知類別
定義 Notification Services 應用程式

說明及資訊

取得 SQL Server 2005 協助