扩展的一些思考

一、扩展

        扩展分为垂直扩展、水平扩展。
        在垂直扩展模型中,想要增加系统负荷就意味着要在系统现有的部件上调整,即通过提高系统部件的能力来实现。
        在水平扩展模型中,我们不是通过增加单个系统成员的负荷而是简单的通过增加更多的系统成员来实现。
 

二、水平扩展

        提高单个部件的能力是有极限的,而增加系统成员是可以无限的,水平扩展的模式由简单到复杂可以分为:主备、集群、分布式。
 

三、主备

        我们开发过程中最常用到的就是MySQL主备了,在同一时刻只有一台数据库服务器提供读写功能,另外一台服务器就是做备份,提供读服务。在这个过程中,我们把一部分读的功能水平扩展出去了,可以简单的认为通过增加服务器数量,就可以增加读的能力了。
 

四、集群

        Tomcat集群,在这个过程中,我们会碰到Session的问题,有Session的就是有状态的服务,调整为无状态的服务或者Session改为其他方式实现,在无状态的时候,增加服务器数量就可以增加应用的能力,集群中的每一台机器都是平等的,提供相同能力的服务。
 

五、分布式

        不存在主节点的分布式,每个节点都提供读写服务,这个跟主备的区别是所有节点可以同时提供读写的能力,不是同一时刻只有一个节点能提供服务,跟集权的主要区别是一个任务可以分到不同的机器上面分别执行,执行完之后再汇总,集群模式下一个请求只可能分到一台机器上面执行,分布式模式下一个请求可以分到多台机器执行,执行之后的结果再次处理。
 

六、总结

        主备、集群、分布式是水平扩展的一个逐步发展的过程,主备还是一台机器做一件事情,集群是多台集群做一件相同的事情,分布式是多台机器做不同的事情。

posted on 2021-08-30 14:17  一麻袋火龙果  阅读(49)  评论(0编辑  收藏  举报

导航