资讯专栏INFORMATION COLUMN

【架构】Tomcat集群概述与架构解析

HitenDev / 1889人阅读

摘要:集群能带来什么提高服务的性能,并发能力,以及高可用性首先,一台机子一个,如果你用单机部署多的话,他们会共享网卡内存磁盘等,其性能依旧不行,且一台机子的线程池是有限的,多机的话可以对应处理并发,对于高可用性,下挂载多台,当一台宕机时,可以直接

Tomcat集群能带来什么?

1、提高服务的性能,并发能力,以及高可用性;

(首先,一台机子一个Tomcat,如果你用单机部署多Tomcat的话,他们会共享网卡、内存、磁盘IO等,其性能依旧不行,且一台机子的HTTP线程池是有限的,多机的话可以对应处理并发,对于高可用性,Nginx下挂载多台Tomcat,当一台宕机时,可以直接将该节点取消,转接到可用节点)

2、提供项目架构的横向扩展能力;

(类似天猫双11,通过动态添加Tomcat,Nginx热部署完成横向扩展功能)

Tomcat集群实现原理

(一步登天)通过Nginx负载均衡进行请求转发

Tomcat集群新旧框架对比解析

单机或常用框架

一个很合理的架构思路,小白也需要了解一下,一眼就能读懂。

转为集群后的“理想”架构

Tomcat集群可能带来的新问题?

1、由上图,有经验的朋友一眼已经看出了Session问题,Session登录信息存储及读取的问题
2、服务器定时任务并发的问题(类似电商类的订单定时关闭任务,可能存在并发问题)

当然,也是有一些解决方案:
类似:采用nginx ip hash policy

优点:可以不改变现有技术架构,直接实现横向扩展(省事)
缺点:
    1、导致服务器请求(负载)不平均(完全依赖ip hash的结果)
    2、在Ip变化的环境下无法服务
    

那么我们理应采用第二种,第一种在正常的公司与团队都很少采用,而也由此演变了比较合理的集群架构

通过Session Server解决单个服务器对应单个Session的问题,后期还要编码处理单点登录,且Redis还要处理分布式锁(防止多机同时启动定时任务,并发问题等)

这里要注意的是,架构的演进是和项目的功能、业务与问题相关的,而不是理所当然的照搬。


如果本文对你有所帮助,欢迎关注个人技术公众号,或者点赞,谢谢。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/11919.html

相关文章

  • 服务端高并发分布式架构演进之路

    摘要:架构演进单机架构以淘宝作为例子。随着用户数的增长,并发读写数据库成为瓶颈第二次演进引入本地缓存和分布式缓存在同服务器上或同中增加本地缓存,并在外部增加分布式缓存,缓存热门商品信息或热门商品的页面等。 1. 概述 本文以淘宝作为例子,介绍从一百个并发到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构...

    FrancisSoung 评论0 收藏0

发表评论

0条评论

HitenDev

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<