I managed to get my Apache server configured with two Tomcat servers with load balancing. Everything works as expected with the requests evenly handled by the two Tomcat servers. I was thinking of using this architecture for redundancy, but I have discovered a problem. If the first Tomcat server goes down, the round-robin algorithm works fine and the requests go to the second Tomcat server only (as expected). If I try and bring the first Tomcat server up again, Apache (through mod_jk) does not pick up the new server and always sends the request to the second server. Seems the only way to get both Tomcat servers back up for Apache is to restart Apache. I was hoping that this architecture could be used to ensure that I would never have to restart Apache if the Tomcat servers goes down, therefore ensuring continuous up-time. I had a look at the mod_jk source code and it seems that if Apache cannot connect to the Tomcat server, the server is marked as dead. There does not seem to be a mechanism to check if the server is back up again. Therefore "dead" servers are not used in the round-robin algorithm even if they come up again. My question is do I understood the problem correctly? Has somebody else experienced these issues and what have they done about it? Hope you can shed some light on the problem. Thanks for you time. Leon Leon Nicholls INtelligentIP Division Sonus Networks, Inc. Tel: (972) 728-8953 Suite 3000 Fax: (972) 301-4901 1701 N. Collins Blvd. www.sonusnet.com Richardson, TX 75080 www.inippowered.com
