-
Amoeba
(以MySQL為底層數據存儲,並對應用提供MySQL協議接口的proxy)
鎖定
Amoeba是一個以MySQL為底層數據存儲,並對應用提供MySQL協議接口的proxy。
- 中文名
- 變形蟲
- 外文名
- Amoeba
- 底層數據存儲
- MySQL
- 優 勢
- 4點
- 不 足
- 4條
Amoeba基本介紹
Amoeba是一個以MySQL為底層數據存儲,並對應用提供MySQL協議接口的proxy。它集中地響應應用的請求,依據用户事先設置的規則,將SQL請求發送到特定的數據庫上執行。基於此可以實現負載均衡、讀寫分離、高可用性等需求。與MySQL官方的MySQL Proxy相比,作者強調的是amoeba配置的方便(基於XML的配置文件,用SQLJEP語法書寫規則,比基於lua腳本的MySQL Proxy簡單)。
Amoeba相當於一個SQL請求的路由器,目的是為負載均衡、讀寫分離、高可用性提供機制,而不是完全實現它們。用户需要結合使用MySQL的 Replication等機制來實現副本同步等功能。amoeba對底層數據庫連接管理和路由實現也採用了可插撥的機制,第三方可以開發更高級的策略類來替代作者的實現。這個程序總體上比較符合KISS原則的思想。
Amoeba優勢
Amoeba主要解決以下問題:
(a). 數據切分後複雜數據源整合
(b). 提供數據切分規則並降低數據切分規則給數據庫帶來的影響
(c). 降低數據庫與客户端連接
(d). 讀寫分離路由
Amoeba不足
(a)、還不支持事務
(b)、暫時不支持存儲過程(近期會支持)
(c)、不適合從amoeba導數據的場景或者對大數據量查詢的query並不合適(比如一次請求返回10w以上甚至更多數據的場合)
(d)、暫時不支持分庫分表,amoeba只做到分數據庫實例,每個被切分的節點需要保持庫表結構一致:
Amoeba:阿米巴原蟲
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:19次歷史版本
- 最近更新: 阿妧云