相对于单体项目,集群有哪些优势?
如果是小型项目,我们直接打war包,部署到Tomcat服务器中。在有条件的情况下,我们可以将Tomcat和DB分别放到三台机器上,这种部署方式对于自己来说仍然是单体。
单体的优势在于,小团队即可完成开发-测试-上线;迭代周期短,速度快;打包方便,运维方便等。
集群的优势
随着用户增多,单体架构必然面临挑战:
- 单节点宕机会造成所有服务不可用--使用集群实现高可用
- 耦合度过高(迭代、测试、部署)--业务拆分,采用分布式、微服务解决
- 单节点并发能力有限--使用负载均衡降低请求压力(解决方案之一,本节重点)。
集群作为多台节点组成的整体,对于用户来说是感知不到的。集群内的节点内网互通,处于同一个局域网中,集群提高并发性、可用性和可伸缩性。可伸缩性体现在节点数量的调整,在预知流量增大的情况下,可以提前增加节点。电商业务中,商品和订单业务相对于其他业务访问量更大,可以分别建立商品集群和订单集群。
使用集群,也有很多注意点,例如用户会话需要采用分布式会话;需要采用单独的服务或者mq实现定时任务;内网互通等问题。
版权声明:本文为博主原创文章,未经博主允许不得转载。