MySQL的分布式數據庫前端代理層 Amoeba

openkk 12年前發布 | 36K 次閱讀 SQL MySQL 數據庫服務器

amoeba是一個以MySQL為底層數據存儲,并對應用提供MySQL協議接口的proxy。它集中地響應應用的請求,依據用戶事先設置的規則,將SQL請求發送到特定的數據庫上執行。基于此可以實現負載均衡、讀寫分離、高可用性等需求。與MySQL官方的MySQL Proxy相比,作者強調的是amoeba配置的方便(基于XML的配置文件,用SQLJEP語法書寫規則,比基于lua腳本的MySQL Proxy簡單)。

amoeba相當于一個SQL請求的路由器,目的是為負載均衡、讀寫分離、高可用性提供機制,而不是完全實現它們。用戶需要結合使用MySQL的 Replication等機制來實現副本同步等功能。amoeba對底層數據庫連接管理和路由實現也采用了可插撥的機制,第三方可以開發更高級的策略類來替代作者的實現。這個程序總體上比較符合KISS的思想。

amoeba主要解決以下問題:

a). 數據切分后復雜數據源整合
b). 提供數據切分規則并降低數據切分規則給數據庫帶來的影響
c). 降低數據庫與客戶端連接
d). 讀寫分離路由

項目主頁:http://www.baiduhome.net/lib/view/home/1331130608765

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!