如果事件來源需要在一個批次中傳送多個事件,
您可以利用單一 sendEvents() 方法呼叫來傳送以提昇效能。
執行這項作業的原因和時機
以這種方式批次處理事件,對於只有在基礎交易順利完成時才應傳送的事件邏輯群組而言也很有用。所有送出的事件都會當成單一交易的一部分加以傳送。
這項作業的替代方案
結果
傳回的值 eventIds 是一個含有傳送事件之廣域唯一 ID 的陣列。
每一個事件都會驗證及檢查現行的過濾準則。接著所有通過過濾準則的有效事件,
都會使用適當的機制加以傳送:
- 如果您是使用同步事件傳輸,事件會使用單一 EJB 呼叫來傳送。如果在 EJB 呼叫期間發生錯誤,則會擲出異常狀況且不會傳送任何事件。
- 如果您是使用非同步事件傳輸,所有事件都會使用單一 JMS 訊息來傳送。如果在 JMS 處理程序期間發生錯誤,則會擲出異常狀況且不會傳送任何事件。