事件處理

事件處理

事件是指系統中任意一個活動的發生,其特點有顯著性(發生在系統感興趣的特定領域),瞬時性(發生在一個特定的時間點)和原子性(發生或不發生)。事件處理是指對系統中任意發生的一個活動調用有關程式或例程進行處理,使系統正常運行。

基本介紹

  • 中文名:事件處理
  • 外文名:event process
  • 學科:計算機
  • 定義:調用有關程式或例程處理事件
  • 有關術語:事件
  • 領域:計算機系統
簡介,事件,事件處理架構,事件處理語言的要求,

簡介

事件處理是指對系統中任意發生的一個活動調用有關程式或例程進行處理。主要目的是使系統正常運行。在作業系統,事件處理是經常發生的,因此,事件處理的類型有很多,例如中斷是由於系統中某事件引起的,對中斷進行處理就是一種事件處理以及進程的調度也是一種事件處理。

事件

在計算中,事件有多種定義,在計算機系統中,事件是指系統中任意一個活動的發生,其特點有顯著性(發生在系統感興趣的特定領域),瞬時性(發生在一個特定的時間點)和原子性(發生或不發生)。數據與事件的發生緊密聯繫在一起,一些數據是所有事件共同的(如發生的時間),而另一些則僅特定於某些事件。與事件相關的數據項被稱為屬性。事件之間通過時間順序、因果關係、聚合關係相互聯繫,事件之間的這些聯繫被定義成事件模式。
在進程通信中,事件作為一種同步原語,是計算機科學中的一種同步機制,用來指示等待中的進程特定條件已經變為真。事件對象一般具有下述操作:
wait - 執行中的執行緒被掛起直到事件為真。如果執行wait時事件已為真,則空操作。
set - 設定事件狀態為真,所有等待此事件的進程變為可調度。
clear - 設定事件狀態為假。
在應用程式中,事件是可以被控制項識別的操作,如按下確定按鈕,選擇某個單選按鈕或者複選框。每一種控制項有自己可以識別的事件,如窗體的載入、單擊、雙擊等事件,編輯框(文本框)的文本改變事件,等等。

事件處理架構

事件處理架構一般由四個不同的實體組成:
(1) 事件源:產生的事件通常是原子事件,但也有可能是高層次的事件。
(2) 事件建模器:定義了事件模式。這些事件模式在事件處理媒介中處理。
(3)事件處理媒介:用於處理事件的平台 (可能是分散式的) ,提供通道訪問來自事件源的事件數據,並把處理結果輸出給事件消費者。事件處理媒介為事件的選擇、聚合、層次結構內的分類、更高層次事件的抽象提供技術架構。事件處理媒介可能是單一的 EPA(單獨的事件處理組件),也可能是一個包含了一組 EPA 的分散式事件處理網路。
(4) 事件消費者:接收來自事件處理媒介的複雜事件並通過反應規則對其回響。事件消費者可能會產生新的事件而作為事件源。
目前複雜(complexevent process,CEP _解決方案供應商提出了幾個具體的 CEP 的參考架構。一些參考架構與具體實施技術關聯性不強,而另一些基於具體的解決方案和技術之上。特定領域的參考模型和元模型也已被提出。 實際架構的某些技術選擇, 不是由要求本身所決定,而是由當時可選擇的技術所決定。

事件處理語言的要求

事件處理語言描述事件模式,並由相應的規則引擎來執行事件查詢。事件處理語言的要求可以描述成以下四個方面(也稱為事件查詢的四個維度):
(1) 數據提取:事件包含的數據決定是否及如何對該事件作出回響。提取事件中的數據作為事件對象的屬性值,用於查詢過程中的條件測試、創建新的事件對象或者觸發相應的反應。
(2) 事件合成:從若干低層事件對象中提取屬性值,用於聚合成更高層的複雜事件。
(3) 時間(因果)關係:事件查詢往往涉及時間約束,即事件的發生必須在一個特定的時間間隔內或按一個特定的順序。根據 Luckman 提出的因果時間原理,事件間的因果關係暗示了事件間的時間關係,所以複雜事件描述語言滿足時間關係就能滿足因果關係。
(4) 事件積累:事件查詢的非單調特徵,如事件否定(事件未發生)和一定時間跨度內的事件數據聚合對無限的事件流是無意義的,因為它們只能在事件流結束時才能確定。因此,這類查詢只能針對特定時間窗內的事件。

相關詞條

熱門詞條

聯絡我們