该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-05
相互侦测也需要通知使用方的:"我的另外几个兄弟不能用了,用我吧!"
所以driver是主动方,failover是这一方需要做的事情。 |
|
返回顶楼 | |
发表时间:2008-05-06
to ztka:
对amoeba来说后端使用的数据库决定了数据安全指数。amoeba本身不存储任何数据,只是充当路由、proxy功能。 你的这种在oralce,使用DataGuard实现,在Mysql中使用master-master实现。 楼主的技术还有很有新意的。只不过现在来说,还需要实践的考验。 |
|
返回顶楼 | |
发表时间:2008-05-06
csrcom 写道 amoeba没有复制功能. 上面的例子只是讲述了 在mysql 在 master-slave结构下,通常做法是读写分离,master充当写 slave充当读 。
master-slave之间的复制还是mysql之间的内部协议完成的。 传统的做法可能需要在客户端配置多个mysql datasource。 可能会在指定的sql用指定的datasource(比如select 开头的语句用slave机器做datasource )。 这种大大增加了客户端的复杂度。并且连接数也相当多. 而引入amoeba就不用关心后面连接的是否是多台的mysql还是amoeba,对客户端完全透明。而且会帮助解决读写分离、负载均衡。这个跟mysql 官方开发的proxy目的是一致的。 有ReplicationConnector,应用程序不用考虑连哪个data source的问题。 |
|
返回顶楼 | |
发表时间:2008-05-07
数据切分方面 基本上面没有个人网站需要用得。
用户相当少 |
|
返回顶楼 | |
发表时间:2008-06-20
|
|
返回顶楼 | |
发表时间:2008-06-26
|
|
返回顶楼 | |
发表时间:2008-06-27
是否能写一些如何结合hibernate进行相关配置?看到回帖,应该是通过jdbc的url负责处理,还是类似原来的jdbc:mysql://localhost:3306/test的形式,只不过端口号就是proxy的端口号,而userName和password就是proxy的userName和password,不知道对不对。。。
个人感觉这是一个非常好的项目,项目价值不亚于mysql proxy,一定要坚持啊lz |
|
返回顶楼 | |
发表时间:2008-06-27
可以把amoeba for mysql 当作一个mysql 服务端来看待,对应用透明的。
不管客户端是c写的还是 java写的使用上面跟使用原来的mysql一样。 xml Server tag中的username/password 是proxy 的 username/password,用于对外验证的 |
|
返回顶楼 | |
发表时间:2008-07-08
看了几篇之后提个问题:这个Amoeba跟Mysql NDB,也就是现在的MySQL Cluster有啥区别?
本来mysql-proxy只是读写分离和简单复制。如果Amoeba是对mysql-proxy的加强,那也倒是ok了。但Amoeba居然加入了HA方面的部分特性,那直接上升到MySQL Cluster的高度了。这个是不是……? |
|
返回顶楼 | |
发表时间:2008-07-08
ztka 写道 csrcom 写道 这个话题我们先到这儿啊
嗯,你可以试试看,加入相互侦测机制,做到相互fail over。不然你软件本身没有failover机制。你可以利用第三方,但是这样不保险。 建议看看官方的MySQL Cluster技术架构图。 ApplicationNode, DataNode, ManagementNode 1相当于query,2相当于存储,3就是你们说得第三方。它负责心跳检测、数据replication的规则等 |
|
返回顶楼 | |