簡體   English   中英

EJB 3中的失敗重試

[英]Failure retry in EJB 3

我們最近將EJB 2應用程序遷移到了EJB 3.在EJB2中,如果onMessage容器中的某些故障將能夠按配置的次數重試該消息,但是在EJB3中則沒有這樣的選擇,有人可以提供幫助。

我們可以顯式地休眠線程並在onMessage中顯式重試嗎?

提前致謝 。

  1. 如果您使用的是@TransactionManagement(value= TransactionManagementType.CONTAINER) ,它是容器管理的事務,那么在異常情況下,消息將在消息發送到DLQ之前10倍退出。
  2. 如果您不使用Activemq RA,則如果您具有容器管理的事務重新交付和異常處理以及管理回滾,恢復,重新傳遞或過期的消息 ,則以下兩個文檔對您很有用
  3. 如果您使用的是ActiveMq資源適配器,則可以使用MaximumRedeliveries 資源適配器屬性
  4. 否則,如果只想重試特定的異常,則可以捕獲該異常,然后使用此附加屬性將消息發送回相同的隊列。 延遲間隔后Activemq消耗消息此外,在消息頭中設置重試計數,以便您可以跟蹤重試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM