Mysql數據庫學習之高可用架構Atlas簡析
阿新 • • 發佈:2018-06-05
mysql數據庫 北京mysql mysql周末 數據庫管理員 Atlas是一個基於MySQL協議的數據中間層項目,在MySQL-Proxy
0.8.2版本基礎上修改了大量bug,添加了很多功能特性。目前該項目很多MySQL業務已經接入了Atlas平臺,每天承載的讀寫請求數達幾十億條。
Atlas的主要功能有:
1.讀寫分離;2.從庫負載均衡;3.IP過濾;4.自動分表;5.DBA可平滑上下線DB;6.自動摘除宕機的DB。
Atlas是一個位於應用程序與MySQL之間中間件。在後端DB看來,Atlas相當於連接它的客戶端;而在前端應用看來,Atlas相當於一個DB。作為服務端與應用程序通訊,它實現了MySQL的客戶端和服務端協議,同時作為客戶端與MySQL通訊。它對應用程序屏蔽了DB的細節,為了降低MySQL負擔,它還維護了連接池。
Atlas相對於MySQL-Proxy的優勢有:
1.將主流程中所有Lua代碼用C重寫,Lua僅用於管理接口;
2.重寫網絡模型、線程模型;
3.實現了真正意義上的連接池;
4.優化了鎖機制,性能提高數十倍。
互聯網企業大多用的數據庫是MySQL的,想要眾多的IT工作者中脫穎而出,就需要擁有高深的技術,學習增值是必不可少的。學習之路,是貴在堅持的。
Mysql數據庫學習之高可用架構Atlas簡析