Amoeba的第一印象

Amoeba介绍

      Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的 时候充当SQL路由功能,专注于分布式数据库代理层(Database Proxy)开发。座落与 Client、DB Server(s)之间,对客户端透明。具有负载均衡、高可用性、SQL 过滤、读写分离、可路由相关的到目标数据库、可并发请求多台数据库合并结果。 通过Amoeba你能够完成多数据源的高可用、负载均衡、数据切片的功能,目前Amoeba已在很多 企业的生产线上面使用。


项目地址:http://amoeba.meidusa.com  文档 http://docs.hexnova.com/amoeba/  源码http://sourceforge.net/users/meidusa  基于AVA开发


架构图




切分(Sharding)实例

水平切分
<?xml version="1.0" encoding="gbk"?>
<!DOCTYPE amoeba:rule SYSTEM "rule.dtd">

<amoeba:rule xmlns:amoeba="http://amoeba.meidusa.com/">
...
   <tableRule name="MESSAGE" schema="test" defaultPools="blogdb-1,blogdb-2">1
      <rule name="rule1">
         <parameters>ID</parameters>2
         <expression><![CDATA[ abs(hash(id)) mod 2 = 0 ]]></expression>3
         <defaultPools>blogdb-1</defaultPools>4
      </rule>
      <rule name="rule2">
         <parameters>ID</parameters>
         <expression><![CDATA[ abs(hash(id)) mod 2 = 1 ]]></expression>
         <defaultPools>blogdb-2</defaultPools>
      </rule>
   </tableRule>
...
</amoeba:rule>
垂直切分
<?xml version="1.0" encoding="gbk"?>
<!DOCTYPE amoeba:rule SYSTEM "rule.dtd">

<amoeba:rule xmlns:amoeba="http://amoeba.meidusa.com/">
...
   <tableRule name="USER" schema="test" defaultPools="userdb"/>1
   <tableRule name="MESSAGE" schema="test" defaultPools="blogdb"/>
   <tableRule name="EVENT" schema="test" defaultPools="blogdb"/>
...
</amoeba:rule>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值