繁体   English   中英

Tomcat负载平衡

[英]Tomcat Load Balancing

我已经在我的机器上创建了一个负载平衡方案,并且可以正常工作。 但是,我只停留在一个简单的问题上,并寻求相同的帮助。

我有两个tomcat工人-worker1和worker2。 我也有一个称为平衡器的负载平衡器。 worker.properties文件的创建如下:

  • worker.tomcat_home =“ MyTomcatDirectory”
  • worker.java_home =“ MyJDKDirectory”
  • worker.list = tomcat1,tomcat2
  • worker.list =平衡器
  • worker.tomcat1.type = ajp13
  • worker.tomcat1.host =本地主机
  • worker.tomcat1.port = 8009
  • worker.tomcat1.lbfactor = 1
  • worker.tomcat2.type = ajp13
  • worker.tomcat2.host =本地主机
  • worker.tomcat2.port = 8019
  • worker.tomcat2.lbfactor = 1
  • worker.balancer.type =磅
  • worker.balancer.balance_workers = tomcat1,tomcat2
  • worker.balancer.method = B`

现在,我有一个webapp称webapp1 ,它已被最终用户广泛使用。 因此,我希望所有对webapp1的用户请求都应由worker1处理。 为此,我在apache的conf目录中的httpd.conf文件中添加了以下几行-

  • JkMount /平衡器
  • JkMount / *平衡器
  • JkMount / webapp1 worker1
  • JkMount / webapp1 / * worker1

这也很好。 唯一的问题是,如果tomcat1(worker1)关闭,则平衡器不会将对webapp1的请求定向到tomcat2(worker2)。 我该如何解决这个问题?

如果您希望请求默认转到工作程序1,然后仅当工作程序1失败时才转到工作程序2,则需要使用两个工作程序(tomcat1b和tomcat2b)设置第二个lb worker(称为lb2),并使用distance参数使tomcat2b的距离比tomact1b大。 除非tomcat1b失败,否则这将导致tomcat1b优先于tomcat2b使用。

有关更多信息,请参见worker.properties文档: http : //tomcat.apache.org/connectors-doc/reference/workers.html

顺便说一句,在worker.properties中有tomcat1,但在JKMount中有worker1。 那行不通。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM