日期:2014-05-16  浏览次数:20392 次

大型系统设计第1课--可扩展的数据库层架构设计 PDF分享

《手把手,教你编写1个可以并行运行在5台数据库上的留言板》

前言:

对于大规模系统而言,最复杂,往往也是最大的性能瓶颈,主要都产生在数据层。对于大型系统数据层的设计,主要包括缓存系统和数据库的可扩展性两方面。缓存系统比较简单,网上讨论的也比较多,方案也相对成熟,一般来说只要部署一大堆memcached之类的缓存服务器就可以解决了,扩展性也好;但对于可扩展的数据库层架构设计,通用方案较少,网上资料更是寥寥无几。

这也有情可原,现在的主流通用数据库框架,如hibernate和ibatis基本上都只支持1个系统运行在1台数据库上。对应的,基于这些框架的系统,也基本上只能运行在单台数据库上了,框架对数据库扩展性的支持几乎没有,开发者也只能被迫接受。

这篇文档,主要补充“重要”却被主流遗失的“数据库层可扩展”架构设计,让你的系统在“需要”时,可以随时通过增加机器就能最简单的解决数据库的性能瓶颈。


1 楼 peterwei 2011-03-24  
我猜得没错的话,你在推guzz.
2 楼 myreligion 2011-03-25  
JE的计数器不同步了吧?我刷了几遍,帖子阅读数怎么都是“浏览 16 次”?
3 楼 zhang19841017 2011-03-25  
JE的计数器是缓存的,到了一定的数量后才去update的
4 楼 itstarting 2011-03-25  
恭喜,这个例子写的好,让guzz变得越来越有味道了
5 楼 shaomeng95 2011-03-26  
楼主精神可嘉啊!
6 楼 C_J 2011-03-26  
JE的东西是不是都有点滞后了? 现在不都是集群数据库么?
7 楼 samwalt 2011-03-27  
只支持java阿
8 楼 myreligion 2011-03-28  
C_J 写道
JE的东西是不是都有点滞后了? 现在不都是集群数据库么?

什么是集群数据库?有通用的并且有实际案例的?给介绍下?
9 楼 phz50 2011-03-28  
zhang19841017 写道
JE的计数器是缓存的,到了一定的数量后才去update的

感觉好像是这样,不过为什么读取的时候不去读取缓存中最新计数呢
10 楼 C_J 2011-03-28  
myreligion 写道
C_J 写道
JE的东西是不是都有点滞后了? 现在不都是集群数据库么?

什么是集群数据库?有通用的并且有实际案例的?给介绍下?



这个问题得问坛子里做web的大拿们了。
11 楼 myreligion 2011-03-28  
C_J 写道
myreligion 写道
C_J 写道
JE的东西是不是都有点滞后了? 现在不都是集群数据库么?

什么是集群数据库?有通用的并且有实际案例的?给介绍下?



这个问题得问坛子里做web的大拿们了。

我06年就开始在JE待着,从没看到过这类东西出现。不过是个美好的梦想罢了。
12 楼 makemyownlife 2011-09-07  
朋友 看看guzz 上次看您的文章,讨论sns方面的问题 请问这方面有什么资料可以研究研究吗