首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无负载均衡器的Tomcat聚类

无负载均衡器的Tomcat聚类
EN

Stack Overflow用户
提问于 2017-10-09 09:26:31
回答 2查看 872关注 0票数 1

我已经尝试过建立Tomcat集群,我想知道是否有必要设置一个负载均衡器。在文档中,它们告诉您只需添加

代码语言:javascript
运行
复制
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

到配置文件,以使群集工作。我在我的实例中添加了以下默认配置(都在不同的机器上,同一个网络上):

代码语言:javascript
运行
复制
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
             channelSendOptions="8">

      <Manager className="org.apache.catalina.ha.session.DeltaManager"
               expireSessionsOnShutdown="false"
               notifyListenersOnReplication="true"/>

      <Channel className="org.apache.catalina.tribes.group.GroupChannel">
        <Membership className="org.apache.catalina.tribes.membership.McastService"
                    address="228.0.0.4"
                    port="45564"
                    frequency="500"
                    dropTime="3000"/>
        <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                  address="auto"
                  port="4000"
                  autoBind="100"
                  selectorTimeout="5000"
                  maxThreads="6"/>

        <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
          <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
        </Sender>
        <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
        <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor"/>
      </Channel>

      <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
             filter=""/>
      <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

      <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                tempDir="/tmp/war-temp/"
                deployDir="/tmp/war-deploy/"
                watchDir="/tmp/war-listen/"
                watchEnabled="false"/>

      <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
    </Cluster>

经过一些测试,我得到了集群不起作用的印象,但是在我开始研究确切的问题之前,我想知道是否需要一个负载均衡器来使集群工作。如果没有,我想知道拥有一个的好处。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-10 08:20:09

是的,你需要一个负载平衡器。当节点发生故障时,必须有一些东西能够引导通信到活动节点。集群只需确保会话在节点之间传输,以便任何节点都可以处理请求而不中断会话。

有关一些(非常基本的)选项和详细信息,请参阅负载平衡一章。如果您希望使用不同的负载均衡器,请参阅其文档。

票数 1
EN

Stack Overflow用户

发布于 2017-10-10 04:25:52

集群负载平衡对于更好的高可用性、可扩展性和部署war文件是一个很好的概念。有关更多详细信息,请参阅以下链接:https://tomcat.apache.org/tomcat-8.0-doc/cluster-howto.html

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46643051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档