高併發 強實時 強一致資料庫業務系統設計的乙個思路

2021-06-03 04:56:08 字數 476 閱讀 6104

高併發,強實時,強一致,這個指標往往是互相牽制的

此類**的優化手段不同於一般大型論壇(讀多寫少),可以運用cache,並且強實時,強一致的要求,也讓了快取無用武之地

這裡大概有這麼乙個思路

在web伺服器後端,架設事務管理伺服器,(每個事務管理伺服器都配乙個db,用於記錄事務日誌實現回滾)

再架設一層資料閘道器伺服器,資料可按業務垂直拆分,或者資料根據某個鍵值水平拆分。

事務請求按一定規則路到致事務管理伺服器,事務管理伺服器路由資料,記錄日誌,

由於來保證一致性。

這種設計思路,只要配置乙個相對靈活的資料路由規則,即可擴充套件併發。

缺點是多少還是會對業務的資料結構有依賴(如果資料根據鍵值路由),

這需要合理地設計協議,來描述可擴充套件的資料字段(xml?)

如果業務存在對多個欄位的鍵值需求,則資料路由變得相對困難。

或者轉換思路,每個表只有乙個鍵值,索引字段通過建新表與主鍵關聯。

mysql 強一致性 Mysql高一致高可用方案

一句話總結 使用官方mysql innodb cluster集群方案實現mysql冗餘備份,無單點故障的高可用性。專案背景 1 對資料可用性要求高,要求多節點冗餘備份,mysql單點故障後可以切換到其他節點 2 對資料準確性要求高,對mysql寫資料時,需要強一致性備份,不能是非同步的備份 3 併發...

資料庫的強一致性和弱一致性

強一致性可以理解為在任意時刻,所有節點中的資料是一樣的。同一時間點,你在節點a中獲取到key1的值與在節點b中獲取到key1的值應該都是一樣的 弱一致性 相當於非同步 系統並不保證續程序或者執行緒的訪問都會返回最新的更新過的值。系統在資料寫入成功之後,不承諾立即可以讀到最新寫入的值,也不會具體的承諾...

高併發快取資料庫不一致

在一般的 的架構中,我們都會採用快取架構來抗住高併發場景下的讀請求。那麼對於寫請求,先更新快取還是先更新資料庫?本文以商品庫存資訊為例,我們展開討論,假設剛開始資料庫庫存 100,快取中庫存 100.1.先更新資料庫,後更新快取 這種情況下,當需要更新庫存的時候,先更新資料庫中的庫存 99,然後再更...