做者 陳彩華
文章轉載交流請聯繫 caison@aliyun.com
複製代碼
最近學習了阿里資深技術專家李運華的架構設計關於分庫分表的教程,很有收穫,總結一下。html
本文主要介紹高性能數據庫集羣分庫分表相關理論,基本架構,涉及的複雜度問題以及常看法決方案。數據庫
讀寫分離分散數據庫讀寫操做壓力,分庫分表分散存儲壓力bash
相似讀寫分離,分庫分表也是肯定沒有其餘優化空間以後才採起的優化方案。那若是業務真的發展很快豈不是很快要進行分庫分表了?那爲什麼不一開始就設計好呢?服務器
按照架構設計的「三原則」(簡單原則,合適原則,演化原則),簡單分析一下:微信
首先,這裏的「若是」事實上發生的機率比較低,作10個業務有一個業務能活下去就很不錯了,更況且快速發展,和中彩票的機率差很少。若是咱們每一個業務上來就按照淘寶、微信的規模去作架構設計,不但會累死本身,還會害死業務。架構
其次,若是業務真的發展很快,後面進行分庫分表也不遲。由於業務發展好,相應的資源投入就會加大,能夠投入更多的人和更多的錢,那業務分庫帶來的代碼和業務複雜問題就能夠經過加人來解決,成本問題也能夠經過增長資金來解決。分佈式
增長表操做的次數ide
相似讀寫分離,具體實現也是「程序代碼封裝」和「中間件封裝」,但具體實現複雜一些,由於還有要判斷SQL中具體操做的表,具體操做(例如count、order by、group by等),根據具體操做作不一樣的處理。post
更多精彩,歡迎關注做者公衆號【分佈式系統架構】性能
阿里雲最近開始發放代金券了,新老用戶都可免費獲取, 新註冊用戶能夠得到1000元代金券,老用戶能夠得到270元代金券,建議你們都領取一份,反正是免費領的,說不定之後須要呢? 阿里雲代金券 領取 promotion.aliyun.com/ntms/yunpar…
熱門活動 高性能雲服務器特惠 助力企業上雲 性能級主機2-5折 promotion.aliyun.com/ntms/act/en…