使用CRDT實現分散式事務的資料推薦
分散式事務的關鍵是實現強一致性,但是CAP定理認為獲得強一致性必然放棄可用性,這是傳統關聯式資料庫和2PC的問題所在,最終一致性可以兼顧一致性和可用性,強最終一致性則更好,因此分散式事務的發展方向走向強最終一致性的一致性模型,強最終一致的模型實現有幾種,比如Paxos和Raft,但是這些只適合封閉的產品環境,對於分散式事務中介軟體的實現目前CRDT是一種方向,全球最大的電子商務公司Ebay已經將其落地,這裡介紹一篇關於CRDT的文章比較全面,點選標題可進入,摘錄如下:
CRDT稱為強最終一致性的一致性模型,在維基百科的最終一致性的描述是:
最終一致性是分散式計算中使用的一致性模型,用於實現高可用性,非正式地保證,如果沒有對給定資料項進行新的更新,最終對該項的所有訪問將返回最後更新的值。
強的最終一致性,強調一些保證一致性的數學特性。
CRDT存在兩種不同型別,一種是基於狀態的,即狀態在副本之間傳送和合並,另一種是基於操作的,單獨的操作被髮送到其他副本。
相關文章
- 資料庫分散式事務的實現原理!資料庫分散式
- 分散式事務之資料庫事務與JDBC事務實現(一)分散式資料庫JDBC
- 使用Spring Boot實現分散式事務Spring Boot分散式
- 分散式事務(3)---RocketMQ實現分散式事務原理分散式MQ
- seata分散式事務TCC模式介紹及推薦實踐分散式模式
- 分散式事務(4)---RocketMQ實現分散式事務專案分散式MQ
- MySQL資料庫分散式事務XA的實現原理分析MySql資料庫分散式
- 分散式事務的幾種實現方式分散式
- 基於RocketMQ實現分散式事務MQ分散式
- SpringCloud+RocketMQ實現分散式事務SpringGCCloudMQ分散式
- Apache ShardingSphere 如何實現分散式事務Apache分散式
- 分散式事務(一)—分散式事務的概念分散式
- node.js 中使用redis實現分散式事務鎖Node.jsRedis分散式
- springboot+ mybatisplus+druid 實現多資料來源+分散式事務Spring BootMyBatisUI分散式
- 分散式事務實戰分散式
- AspNetCore&MassTransit Courier實現分散式事務NetCore分散式
- Golang 實現 Redis(8): TCC分散式事務GolangRedis分散式
- php基於dtm分散式事務管理器實現tcc模式分散式事務demoPHP分散式模式
- MySQL 中基於 XA 實現的分散式事務MySql分散式
- Seata 無侵入式分散式事務服務的實現基石-JDBC篇分散式JDBC
- 使用Spring Boot + Kafka實現Saga分散式事務模式的原始碼 - vinsguruSpring BootKafka分散式模式原始碼
- 分散式資料庫事務故障恢復的原理與實踐分散式資料庫
- 分散式事務之JTA原理與實現(三)分散式
- kratos分散式事務實踐分散式
- 分散式事務 | 使用DTM 的Saga 模式分散式模式
- 分散式事務之事務實現模式與技術(四)分散式模式
- 基於Seata探尋分散式事務的實現方案分散式
- 從 Oracle 轉型 MySQL 分散式事務資料庫的實戰旅途OracleMySql分散式資料庫
- Office Depot使用Apache Spark和Analytics Zoo上的分散式Keras實現實時產品推薦ApacheSpark分散式Keras
- 事務使用中如何避免誤用分散式事務分散式
- 搞懂分散式技術19:使用RocketMQ事務訊息解決分散式事務分散式MQ
- Dubbo 分散式事務一致性實現分散式
- Laravel基於reset機制實現分散式事務Laravel分散式
- Asp.Net Core&CAP實現分散式事務ASP.NET分散式
- MassTransit | 基於StateMachine實現Saga編排式分散式事務Mac分散式
- 微服務架構 | 11.1 整合 Seata AT 模式實現分散式事務微服務架構模式分散式
- 分散式事務與Seate框架(3)——Seata的AT模式實現原理分散式框架模式
- 分散式事務和分散式hash分散式