大型分布式系统架构设计(一)------------大型系统解决方案的演变
写在前面的话
1、这是一个系列。
2、首先得感谢我所在公司的另外一个部门的技术经理赵林先生的一个演说对我的启发以及他对我的一系列问题的解答。
3、这个系列的前面一部分会是根据上面一点所得来的。
4、这个系统的背景是当前一个平台型项目的任务。这个任务需要考虑到用户数的不停增长,而在此情况下,希望通过直接添加硬件而非修改程序来适应。
5、我对博客内容关于文本方面的处理可能不会太着重,所以…亲们,多担待了。
好了,废话少说,正文开始。
其实,任何一个系统,它都是为了迎合需求所定制的业务而产生的一个很小的解决方案。那么最未原始的一个系统情况如下:
好了,最基本的业务,这样子就可以满足了,这里我们先不说应用程序里面的实现,那个是后面的章节细化的时候讨论的问题。
接下来,考虑一下,如果随着系统投入生产环境,用户数量的不断增长,那么在同一个服务器资源有限的情况下,将不能满足系统所需。那么初步的解决方案会是下面这种
在接下来,如果继续增长,那么上述情况也已经不能解决,那怎么办呢?好吧。常用优化机制开始进驻。缓存
这里先没有画App级别的缓存,因为这个对外的GUI展现方式,有可能是Web,那么就是页面级缓存,如果是B/S系统,那么可能是客户端单独做的缓存,内存也好,嵌入式数据库也好。这里由于各种差别,所以不列入讨论范围。
然后继续考虑,如果这种情况也无法满足的话,那么接下来就得引入集群了。如下图:
在这种情况下,所有的App Server上所跑的Application Service是一样的。至于怎样去访问,那不是客户端所关心的问题,负载均衡工具大家都不陌生把。
今天时间不够了- -先写到之类。。。下期会从开始根据不同功能划分App Server




浙公网安备 33010602011771号