`

Amoeba+rose:开源项目搭建大型网站可扩展构架实记[转]

 
阅读更多
java是一把双刃剑,可以很重地伤人,亦可很重地自伤。曾在一处见到,淘宝在长期使用java构建web项目后,得出一个结论:积重难返。

实际工作经验得到的结论,积重难返的原因,往往不是java本身的缘故,而是团队成员基础积累参差不齐,许多次的“一不小心”积累成了最终的结果。到了悔之晚矣的时候自然就积重难返了。如何避免java使用自伤,最关键在于,统一团队成员的code入口,框下可能发生的事情,避开不能发生的事情,言归正传,下面开始介绍两个非常不错的java开源项目,搭配两个项目,可以搞定所有的mysql+java项目的任何方向的扩展和自由的开发而不担心积重难返。


项目简介
1) rose框架:
来自人人网王志亮大侠的大作,其优异的性能撑下了SNS网站复杂多变的业务(人人网大量使用),同时开发非常方便,有大量的文档可供参考。
项目地址:
http://code.google.com/p/paoding-rose/


2) Amoeba:
Amoeba(变形虫)项目,专注分布式数据库 proxy 开发。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据库合并结果。使用这个项目可以将DB层透明,简单做到分库分表,甚至无限partition。作者陈思儒大侠。
下面有一篇两年前Fenng对作者的采访:
http://www.infoq.com/cn/articles/interview-chensiru-amoeba
项目地址:
http://amoeba.meidusa.com/


构架图

相关配置
1) 配置rose中的数据源为amoeba
http://code.google.com/p/paoding-rose/wiki/Jade_DataSource

2) 配置amoeba为mysql(使用amoeba-mysql)
http://amoeba.meidusa.com/amoeba.pdf

http://bbs.paris8.org/viewthread.php?tid=5501
分享到:
评论

相关推荐

    Amoeba+mysql 读写分离 Keepalived+mysql

    **Amoeba+MySQL 读写分离** Amoeba 是一个分布式数据库中间件,主要用于MySQL的读写分离。它的主要作用是将读操作分发到多个从库,从而减轻主库的压力,提高系统整体的读取性能。Amoeba 通过透明的方式工作,应用...

    amoeba+mysql-mmm+mysql 高可用

    amoeba+mysql-mmm+mysql 高可用,读写分离,双主多活

    Mysql+drbd+heartbeat+amoeba集群配置详解

    根据提供的信息,我们可以详细探讨如何构建一个基于MySQL、DRBD(Distributed Replicated Block Device)、Heartbeat以及Amoeba的高可用性和负载均衡的数据库集群系统。这种集群配置旨在提高系统的稳定性和数据的...

    amoeba集群文档+Amoeba使用指南pdf+mysql主从同步

    通过以上四个文件,学习者可以全面了解如何利用Amoeba搭建高可用性和负载均衡的MySQL数据库集群,以及如何实现MySQL的主从同步,从而提升数据库系统的稳定性和可扩展性。在实际操作中,遇到任何问题都可以根据描述中...

    Amoeba搞定mysql主从读写分离

    Amoeba是一款开源的MySQL中间件,专为实现主从读写分离而设计。在Java开发环境中,Amoeba的使用能够帮助开发者构建出高效、稳定的分布式数据库系统。 首先,了解Amoeba的工作原理至关重要。Amoeba作为透明的数据分...

    amoeba-n.zip

    MySQL集群是一种分布式数据库解决方案,旨在提高数据库系统的可用性、可扩展性和性能。在这个场景中,amoeba-n.zip 文件包含的是Amoeba中间件和Java Development Kit (JDK)的安装包,它们是实现MySQL集群读写分离的...

    MySQL搭建Amoeba_读写分离.docx

    MySQL 搭建 Amoeba 读写分离 在本文中,我们将详细介绍如何使用 Amoeba 实现 MySQL 读写分离的配置过程。Amoeba 是一个基于 MySQL 的 proxy,能够集中地响应应用的请求,并根据用户事先设置的规则,将 SQL 请求发送...

    Amoeba学习资料

    Amoeba,全称为Amoeba中间件,是一款开源的分布式数据库系统,主要应用于大型互联网公司的数据分片处理。在MySQL等传统关系型数据库无法满足大规模数据存储和高并发访问需求时,Amoeba应运而生,为解决这些问题提供...

    amoeba使用教程

    Amoeba是一款开源的分布式数据库前端代理层,主要用于MySQL数据库的分布式管理。它在2008年开始发布,设计目标是解决传统集中式数据库系统的性能瓶颈、可靠性和可扩展性问题。Amoeba作为SQL路由工具,位于客户端和...

    Amoeba:分布式数据库Proxy解决方案

    - **可重用的服务器连接**:Amoeba提供高度可重用的数据库连接,减少了客户端与数据库之间的连接数量,提高了系统的整体效率。 - **读写分离与数据切分**:通过内置的支持,简化了客户端的操作流程,实现了高效的...

    amoeba-mysql-binary

    "amoeba-mysql-binary" 是一个与MySQL数据库相关的开源项目,其主要功能是提供一种分布式解决方案,用于扩展MySQL服务器的能力,提升数据库的可扩展性和可用性。Amoeba这个名字来源于生物学中的变形虫,寓意该系统...

    amoeba2.2.0

    标题“amoeba2.2.0”指的是一个特定版本的开源软件项目,amoeba的2.2.0版。amoeba通常是指一个分布式数据库中间件,它在IT领域中的作用是帮助管理和分发数据库负载,以提高系统的可扩展性和可用性。这个软件可能是...

    amoeba-aladdin-binary

    标签“amoeba”表明这与Amoeba项目有关,Amoeba通常是一个分布式数据库管理系统,它将单个数据库透明地分割成多个部分,分布在网络的不同节点上,以实现水平扩展。Amoeba Aladdin可能是Amoeba系统的一个组件,专注...

    Amoeba使用指南 20110928 pdf

    - **易于管理和扩展**:Amoeba提供了直观易用的配置方式,使得系统的管理和维护变得更加简便,并支持灵活的水平和垂直扩展。 #### 三、Amoeba的核心概念 - **数据库代理**:Amoeba作为客户端与后端数据库之间的中间...

    Amoeba配置文件

    Amoeba是MySQL的一个中间件,它能将一个数据库实例分成多个部分(称为“Amoeba节点”),从而提高系统的可扩展性和性能。下面我们将详细讨论MySQL数据库的负载均衡配置以及Amoeba的工作原理。 **1. MySQL负载均衡**...

    amoeba-mysql-1.2.0-RC3.zip

    Amoeba是一个开源项目,它旨在解决数据库扩展性问题,尤其是针对MySQL数据库的读写分离需求。1.2.0-RC3代表这是1.2.0版本的第三个候选发布版(Release Candidate),意味着这是一个在正式发布前的测试版本,可能存在...

    amoeba_mysql读写分离部署说明.docx

    它的主要功能是接收应用程序的 SQL 请求,根据预设规则将这些请求转发到合适的 MySQL 实例上执行,从而提高系统的可扩展性和可用性。尽管 Amoeba 不直接实现所有高可用性和负载均衡的功能,但与 MySQL 的复制机制...

    amoeba-mysql-3.0.5-RC-distribution.zip

    Amoeba MySQL 是一个分布式数据库系统,它基于开源的 MySQL 数据库引擎,旨在提供高可用性、可扩展性和性能优化。3.0.5 RC(Release Candidate)版本是该软件的一个候选发布版本,通常在正式版发布前,供用户测试和...

    amoeba-mysql-3.0.5-RC.tar.gz

    Amoeba MySQL 3.0.5 RC 是一个专为MySQL设计的分布式中间件,用于实现数据库的读写分离功能,尤其适用于大型、高并发的Linux环境。在深入理解这个软件之前,我们先来了解一些基本概念。 1. **数据库读写分离**:在...

Global site tag (gtag.js) - Google Analytics