Tomcat集群架构图
omcat集群能带来什么:
- 提高服务的性能,例如计算处理能力、并发能力等,以及实现服务的高可用性
- 提供项目架构的横向扩展能力,增加集群中的机器就能提高集群的性能
Tomcat集群实现方式:
- Tomcat集群的实现方式有多种,最简单的就是通过Nginx负载进行请求转发来实现
Tomcat单机架构图:
常见的Tomcat集群解决方案:
- 采用 nginx 中的 ip hash policy 来保持某个ip始终连接在某一个机器上
- 优点:可以不改变现有的技术架构,直接实现横向扩展,省事。但是缺陷也很明显,在实际的生产环境中,极少使用这种方式
- 缺点:1.单止服务器请求(负载)不均衡,这是完全依赖 ip hash 的结果。2.客户机ip动态变化频繁的情况下,无法进行服务,因为可能每次的ip hash都不一样,就无法始终保持只连接在同一台机器上。
- 采用redis或memchche等nosql数据库,实现一个缓存session的服务器,当请求过来的时候,所有的Tomcat Server都统一往这个服务器里读取session信息。这是企业中比较常用的一种解决方案,所以大致的Tomcat集群的架构图如下: