在 BPEL 流程中使用事件和超時



非同步 Web 服務通常需要很長時間才能返回響應,因此,BPEL 流程服務元件必須能夠超時或放棄等待,並在經過一段時間後繼續執行其餘流程。您可以使用 pick 活動將 BPEL 流程配置為等待指定的時間段或繼續執行其職責。要設定時間的過期時間段,可以使用 wait 活動。為了管理訊息,事件可以被使用,尤其是在業務流程等待來自合作伙伴 Web 服務的回撥時。

事件

BPEL 支援兩種型別的事件:

訊息事件

這些事件由透過埠型別上的操作呼叫傳入的訊息觸發。

警報事件

這些事件與時間相關,並在經過一定持續時間或在特定時間觸發。

  • 然而,通常更有用的是等待多個訊息,其中只有一個會發生。

  • 當您希望流程等待一段時間(例如 15 分鐘)的回撥時,警報事件很有用。

    • 如果未收到回撥,則流程將按照設計的繼續進行。

    • 在鬆散耦合的面向服務的體系結構中很有用,在這些體系結構中,您無法依賴 Web 服務始終可用。

Pick 活動

pick 活動有兩個分支:

  • onMessage - 此分支上的程式碼等於在新增超時之前接收響應的程式碼。

  • onAlarm - 此條件包含一分超時程式碼。

Wait 活動

wait 活動允許流程等待給定的時間段或直到達到時間限制。必須指定一個過期條件。

廣告

© . All rights reserved.