我們的客戶遵循SOA原則,並有設計的Web服務是非常細粒度像createCustomer,deleteCustomer等事務管理
我不知道如果細粒度的服務是可取的,因爲他們創造的事務有關的問題。例如,如果業務需求是每個客戶在創建時都必須有一個地址。因此,在這種情況下,表示組件首先調用createCustomer,然後調用createAddress。這些服務在內部使用簡單的JDBC來更新db中的相應表。由於服務是由外部組件調用的,因此它沒有辦法滿足事務性要求,即如果createAddress失敗,則createCustomer操作必須回滾。
我想,處理這個問題的方法之一是設計課程粒度服務(在單個JDBC事務中創建客戶和關聯地址)或者簡單地創建反向服務(deleteCustomer) createCustomer的行爲。
有什麼建議。謝謝
該文章的鏈接似乎已損壞。 – AdamC 2014-08-11 17:44:06
該文章似乎已消失。我已刪除鏈接。 – djna 2014-08-11 18:09:43