WS分散式事務

javawebkaifa發表於2012-09-30
第一: 有這樣一種情況,我對webservice的事務處理有種不明白的感覺:
情況描述:現在有2個,甚至更多WS介面,這裡就按2個WS介面來說吧!現在又一個業務是這樣的,要同時呼叫2個介面,第一個WS介面往table_a表裡面寫入資料,第二個WS介面忘table_b表裡寫入資料。我們在寫程式碼的時候,
public boolean doService{

第一個Ws介面執行

第二個Ws介面執行
}

如果第一個已經執行了,第二個執行失敗,但是第一個已經執行了,怎麼處理這樣的?????

我想了下,我們定義Ws介面肯定會根據業務的實現來進行定義,我沒有把這個業務定義成一個WS介面,如果失敗,是一個整體,在DAO成回滾就是,我覺得這樣處理該是可以的,不知道是不是最好的處理方法。

第二: 還有一個情況,就是對於處理多資料來源的問題,一個業務同時執行了2個不同資料來源的表,這樣失敗了,也怎麼控制?


第三:關於多執行緒處理共享資料的時候,我也看了論壇上的很多資料,可以採用並行並非框架,但是我們現在還是採用的鎖機制來完成的,(就像火車票網站一樣)直接鎖的機制,在併發量大的時候,還是不行,不管什麼樂觀鎖。。。都差不多,在程式碼的實現上,有什麼更好的辦法嗎?求解!!!!!萬分感謝

[該貼被javawebkaifa於2012-09-30 11:56修改過]

相關文章