Hello Steve, this does not mean there is anything inherent in the use of the loadbalancer that is causing the problem. IMHO you need to establish a baseline metric with a real JVM testing tool (like JMeter). You need to create a model of the real production environment and network topology using some type of separate dev environment. Start with just one instance of Tomcat using a true distributed master/slave type test (Hardware and software). Increase the number of users (ThreadGroups) until you can get a repeatable exception as you have posted. Minimally, you should be able to force the application to drop transactions at a certain and given number of users. Once you have a baseline metric to work with then you can increase the number of deployed TC instances and repeat your test. Also, check for you Tomcat installation: client or server? What is your JVM Eden tuning? Many other possibilities at:
http://wiki.apache.org/jakarta-jmeter/ (Peter Lin etc.). Or scale vertically instead of horizontal (ibid Peter Lin). HTH. Steve Burt wrote .. > Hi Folks, > > This is a resurection of a problem that I think many fellow > Administrators are experiencing but I think there has never been a > real solution to the problem... > > I am responsible for a web application > > config is as follows > > pix firewall -> cisco loadbalance -> apache webservers -> application > -> Oracle DB > > Problem that I am expericing is every time I try into introduce the > appserver into the loadbalancer config, the keep alive request seems > to be agrivating tomcat and causing it to crash.. this as you can > imaging is very tiresome... :-) you have to have a sense of humour > about these things... > > Anyway the error message is > > Nov 13, 2006 9:02:19 PM org.apache.tomcat.util.net.PoolTcpEndpoint > processSocket > SEVERE: Socket error caused by remote host /xxx.xxx.xxx.xxx(This is the > IP address of the loadbalancer" > > java.net.SocketException: Invalid argument > > at java.net.PlainSocketImpl.socketSetOption(Native Method > at java.net.PlainSocketImpl.setOption(PlainSocketImpl.java:240) > at java.net.Socket.setTcpNoDelay(Socket.java:771) > at org.apache.tomcat.util.net.PoolTcpEndpoint.set contd...... > > This seems to be a popular message but I dont think there has been a > resolution to this.. > > Now If I remove the appserver from the loadbalance problem dissappears > ... obviously > > The Loadbalancer is sending its keepalive request direct to port 8080 > on the appserver > > I am considering the following fix > > 1 : create a small webapp that check port 8080 itself, and point the > loadbalancer to the *.jsp > > Now has anyone else experienced this? > > Good Talking > > --------------------------------------------------------------------- > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]