云计算下的多层服务器集群架构

系统 1865 0
对于超大型互联网应用如Google搜索,淘宝网,阿里巴巴SaaS平台等需要云计算的有力支撑, 而以普通PC组建超大规模计算集群是一个常见选择。

对于Web Server和App Server集群来说,通过大规模线性扩展和集群化,可以很好的提升网站整体的并发访问量和整体性能。

1. 扁平式负载集群
一个常见的集群设计是扁平式负载集群(Flat Cluster),一台或多台Apache + 多台App Server,通过Apache进行负载均衡。如下图所示。
(注:为简单起见,这里不考虑硬件负载,DNS,Squid等其他节点因素,下图中3台JBoss仅作示意,实践中可扩展到最大允许个数)


扁平式负载集群能够实现基本的负载均衡,上图中使得部署在JBoss上的应用能提供3倍的并发量。
随着应用规模增长,App Server可以水平扩展。但当JBoss节点增加到一定数量时,Apache成为瓶颈所在,主要是Apache和后端JBoss集群之间要建立更多的连接,而对于Apache服务器,连接资源是有限制的。
扁平式还有个维护问题,1+N的模式,要增加,减少JBoss节点都要在Apache端处理,对HA会有短暂影响。

2. 多层负载集群

下图中
Apache 1具有更高的处理能力,作为多层集群的前端。
Apache 2.x 具有和扁平式集群中的Apache相同的处理能力。

其中Apache 2.x 层相当于增加了一个虚拟层,对于Apache 1来说,只需要管理和交互3台服务器。而下层的子集群可根据需要灵活的进行水平扩展。

3. 多层分布式数据库
多层集群思想对于数据库切分尤为有用。
在扁平式下(参见图1),假设1000万注册用户分10个库,则每个库要处理100万用户的业务数据。
而在多层分布式数据库下,虚拟层仍保持 10个虚拟,但不处理实际数据;每个虚拟节点下再设置 10个实际的数据库,那么,此架构下,共100个数据库实例,每个只需要处理10万用户的业务数据,仍有90万的剩余处理能力留作未来容量。因此,整个分布式数据库的处理能力大大提升。

云计算下的多层服务器集群架构


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论