开发者社区> 问答> 正文

apache +tomcat 集群问题?报错

最近研究集群的架构,在本机做了个集群的例子。 将tomcat1和tomcat2 以及apache启动后, 我用IE访问

http://localhost/webservice/xx.jsp 正常, 发现访问的是tomcat1。 再次刷新或者重新访问,发现始终是tomcat1在处理。 同时用firefox访问上面的地址,发现访问的是tomcat2,刷新或再次访问也是tomcat2.

然后关掉tomcat1 ,再在ie 上点击刷新,发现报错了。

上面的现象表名:一个客户端一旦访问集群中的一台APP服务器,那么就永远绑定到这台app服务器了,一旦这台app服务器崩溃,此客户端的请求就不能被处理了。

这肯定不是负载均衡,谁能给我解释下为什么会这样啊? 

 

 

httpd.conf 关键配置如下:

LoadModule jk_module modules/mod_jk.so

JKWorkersFile conf/workers.properties

JkLogFile logs/mod_jk.log

<VirtualHost *>

DocumentRoot f:/www
<Directory "f:/www/webservice">

    AllowOverride None

    Order allow,deny

          Allow from all

</Directory>

<Directory "f:/www/webservice/WEB-INF">

         Order deny,allow

         Deny from all

</Directory>


ServerAdmin localhost

DocumentRoot f:/www/

ServerName localhost

DirectoryIndex index.html index.htm index.jsp index.action

ErrorLog logs/shsc-error_log.txt

CustomLog logs/shsc-access_log.txt common

JkMount /*WEB-INF controller

JkMount /*j_spring_security_check controller

JkMount /*.action controller

JkMount /servlet/* controller

JkMount /*.jsp controller

JkMount /*.do controller

JkMount /*.action controller

JkMount /*fckeditor/editor/filemanager/connectors/*.* controller

JkMount /fckeditor/editor/filemanager/connectors/* controller

</VirtualHost>

workers.properties 配置

#集群tomcat配置 start
worker.list = controller  

#tomcat1
worker.tomcat1.port=8009        

worker.tomcat1.host=localhost

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=1

#tomcat2

worker.tomcat2.port=9009      

worker.tomcat2.host=localhost

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor=1 

#========controller========

worker.controller.type=lb

worker.controller.balance_workers=tomcat1,tomcat2

worker.lbcontroller.sticky_session=0

worker.controller.sticky_session_force=true

worker.connection_pool_size=3000

worker.connection_pool_minsize=50

worker.connection_pool_timeout=50000
#集群tomcat配置 end

 

展开
收起
爱吃鱼的程序员 2020-06-22 14:45:34 692 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    我也想知道!

    将你的第31行配置:

    worker.controller.sticky_session_force=true

    改为

    worker.controller.sticky_session_force=false

    再试试。

    具体差别请查阅手册哈。

    看看tomcat的server.xml里是否<Enginename="Catalina"defaultHost="localhost"jvmRoute="<spanstyle="background-color:#E53333;">tomcat1">配置成同名了


    2020-06-22 14:45:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Apache Flink-实时计算正当时 立即下载
实时计算正当时-Apache Flink 理论和实战精解 立即下载
Apache Flink技术进阶 立即下载

相关镜像