功能特性

服務品質和管理員屬性

Orbacus Notify 支援所有標準 QoS 和管理員屬性。有數種方法可以克服 Notification Service 規格固有的缺點。這些功能可解決下列問題:

  • 因為通訊失敗而重試事件
  • 拉式模型的輪詢時間間隔

在更廣的範圍上,您可以將 Orbacus Notify 設定為在不同系統組態下提供最大效能。這些系統組態包含從少數幾位提供者和消費者,到許多外部用戶端等。Orbacus Notify 也可以根據相互競爭的要求 (例如事件可靠性和事件輸送量) 來調整設定。

訂閱內容共享

結構化的事件會依網域和類型在事件標題上加以分類。Orbacus Notify 用戶端可以使用這些資訊,確保不必要的事件從一開始便不會產生。

每一個通知管道都會維護一份「發送」事件類型和「訂閱」事件類型的彙總清單。提供者可以新增或移除發送事件的類型,而消費者可以新增或移除訂閱。任何發送事件總數的變更都會傳給消費者,訂閱變更則傳給事件提供者。

事件轉譯

事件提供者和消費者可以互相傳達事件,無論事件類型是否相同。Orbacus Notify 完全支援事件轉譯,而事件會根據消費者要求採用「最少包裹」。具體而言,來自結構化提供者的結構化事件會傳送給 CORBA::Any 中無指定類型的消費者。相同地,無指定類型的事件會在結構化事件的剩餘本文欄位中呈現給結構化的消費者。

傳送模式

Orbacus Notify 支援官方推式、拉式以及混合通訊模型。

Event Service 相容性

Orbacus Notify 可以完全反向相容 OMG Event Service,讓您現有的事件服務用戶端可以順利移轉。

事件傳送

為了與事件服務用戶端保持反向相容性,Orbacus Notify 支援無指定類型的事件傳送。此外,Orbacus Notify 也引進了結構化事件和順序結構化事件傳送。

結構化事件讓您指定每個事件的 QoS,並撰寫包含可過濾和不透明欄位的事件。因為結構化事件實際上是 IDL 類型,Orbacus Notify 看得見可過濾的欄位並會在事件過濾時使用。

順序結構化事件

對小型的個別事件而言,每個方法的指令執行時間皆可能影響整體效能。若您的用戶端頻頻傳輸小型事件,您可能要考慮使用順序結構化事件。

在這個機制中,一個以上的結構化事件會組成一個批次,並以單一方法叫用的方式傳輸。提供者可完全控管順序的組成分子,並可在實際傳送之前累積任意數量的事件。同樣地,Orbacus Notify 能讓消費者設定事件傳送的批次大小上限和調步間隔。

過濾

結構化事件由一個事件標題和事件本文組成,其中本文又包含可過濾和不可過濾的欄位。Orbacus Notify 使用對應過濾器來支援事件標題使用期間與優先程度內容值的對應。實際操作時,這項對應會改變 Orbacus Notify 內部處理事件的方式。

轉遞過濾器讓您在服務提供期間的不同時點過濾事件流。如此可確保消費者端珍貴的網路頻寬是用在對的地方,不會被不需要的事件佔用。