Tomcat集群有什么用?

2025-03-24 01:31:21
推荐回答(5个)
回答1:

Tomcat集群的三种负载均衡方式优缺点对照。
1.使用DNS轮询.
2.使用Apache R-proxy方式。
3.使用Apache mod_jk方式.

DNS轮询的缺点是,当集群中某台服务器停止之后,用户由于dns缓存的缘故,便无法访问服务,
必须等到dns解析更新,或者这台服务器重新启动。
还有就是必须把集群中的所有服务端口暴露给外界,没有用apache做前置代理的方式安全,
并且占用大量公网IP地址,而且tomcat还要负责处理静态网页资源,影响效率。
优点是集群配置最简单,dns设置也非常简单。

R-proxy的缺点是,当其中一台tomcat停止运行的时候,apache仍然会转发请求过去,导致502网关错误。
但是只要服务器再启动就不存在这个问题。

mod_jk方式的优点是,Apache 会自动检测到停止掉的tomcat,然后不再发请求过去。
缺点就是,当停止掉的tomcat服务器再次启动的时候,Apache检测不到,仍然不会转发请求过去。

R-proxy和mod_jk的共同优点是.可以只将Apache置于公网,节省公网IP地址资源。
可以通过设置来实现Apache专门负责处理静态网页,让Tomcat专门负责处理jsp和servlet等动态请求。
共同缺点是:如果前置Apache代理服务器停止运行,所有集群服务将无法对外提供。
R-proxy和mod_jk对静态页面请求的处理,都可以通设置来选取一个尽可能优化的效果。
这三种方式对实现最佳负载均衡都有一定不足,mod_jk相对好些,可以通过设置lbfactor参数来分配请求任务。

回答2:

可将请求分给多个tomcat,降低单个tomcat的负荷,同时,也避免一个tomcat崩溃导致无法访问的窘境。

回答3:

集群的作用嘛......你看看淘宝,不管多大的访问量一点事没有

回答4:

对于一个集群应用, 一般是希望集群中任何一台机器的下线或上线, 能够不影响整个集群对外的一致性. 所以, 很多时候, 都不希望把session保存在tomcat本地. 最简单的做法是把 session保存在 cookie里, 虽然这不是太安全, 但对于简单的应用或者对安全性要求不高的应用, 勉强可用了.
如果配置成 "tomcat集群", 并没有带来什么新的好处, 而且, 单机的下线可能会影响集群对外的响应.

回答5:

高可用、容错