首頁  >  文章  >  後端開發  >  數據一致性問題

數據一致性問題

WBOY
WBOY原創
2016-09-19 09:16:261474瀏覽

在一段程式碼中,同時對mysql,redis,mongodb進行了操作,怎麼能保證這幾個資料庫之間資料的一致性呢?
例如msyql保存字段A,redis保存字段B,mongodb保存字段C,如何確保ABC同時成功或失敗

回覆內容:

在一段程式碼中,同時對mysql,redis,mongodb進行了操作,怎麼能保證這幾個資料庫之間資料的一致性呢?
例如msyql保存字段A,redis保存字段B,mongodb保存字段C,如何確保ABC同時成功或失敗

雖然操作是同時的,但是每個資料庫在處理時不一樣,並不能保證他們都成功。
可以當三個處理都成功時,才算最終的成功,有一個失敗,就當成失敗。

這個設定是這樣沒錯?

我想redis跟mysql的事務比較好操作,插入前開啟事務mongodb操作成功在一起commit吧,rollback一起rollback

因為涉及到三種類型的資料庫,所以應該是沒有現成的XA協定,來保證各個資料庫的強一致性。所以可以退而求其次,保證最終一致性.
分散式事務1
分散式事務2

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn