What did the haproxy stats web page show during the test?
How long was each test run? many people seem to run ab for a few seconds.
Was tomcat "doing" anything for the test urls, I am a bit shocked you got 3700 rps from tomcat. Most apps I have seen on it fail at much lower rps.

Raise the max conn for each server and for the front end and see if you get better results.

On 10/6/10 7:11 PM, Les Stroud wrote:
I did a little more digging and found several blogs that suggest that I will
take a performance hit on virtual platforms. In fact, this guy
(http://www.mail-archive.com/[email protected]/msg03119.html) seems to have
the same problem. The part that is concerning me is not the overall
performance, but that I am getting worse performance with 4 servers than I am
with 1 server. I realize there are a lot of complications, but I have to be
doing something very wrong to get a decrease.

I have even tried putting haproxy on the same server with 2 tomcat servers and
used 127.0.0.1 to take as much of the network out as possible. I still get a
lower number of requests per second when going through haproxy to the 2
tomcats (as opposed to going directly to one of the tomcats). This test is
using ab locally on the same machine.

I have tried all of the sysctl settings that I have found listed on the board.
Is there anything I am missing??

I appreciate the help,
Les Stroud

On Oct 6, 2010, at 3:56 PM, Les Stroud wrote:

I’ve figured I would find answers to this in the archive, but have been
unable to. So, I appreciate the time.

I am setting up an haproxy instance in front of some tomcat instances. As a
test, I ran ab against one of the tomcat instances directly with an
increasing number of concurrent connections. I then repeated the same test
with haproxy fronting 4 tomcat servers. I was hoping to see that the haproxy
setup would perform a higher number of requests per second and hold that
higher number with increasingly high traffic. Unfortunately, it did not.

Hitting the tomcat servers directly, I was able to get in excess of 3700
rqs/s. With haproxy in front of that tomcat instance and three others (using
roundrobin), I never surpassed 2500. I also did not find that I was able to
handle an increased amount of concurrency (both started giving errors around
20000).

I have tuned the tcp params on the linux side per the suggestions I have
seen on here. Are there any other places I can start to figure out what I
have wrong in my configuration??

Thanx,
LES


———

haproxy.cfg

global
#log loghost local0 info
maxconn 500
nbproc 4
stats socket /tmp/haproxy.sock level admin
defaults
log global
clitimeout 60000
srvtimeout 30000
contimeout 4000
retries 3
option redispatch
option httpclose
option abortonclose

listen stats 192.168.60.158:8081
mode http
stats uri /stat #Comment this if you need to specify diff stat path for
viewing stat page
stats enable
listen erp_cluster_https 0.0.0.0:81
mode http
balance roundrobin
option forwardfor except 0.0.0.0
reqadd X-Forwarded-Proto:\ https
cookie SERVERID insert indirect
server tomcat01-instance1 192.168.60.156:8080 cookie A check
server tomcat01-instance2 192.168.60.156:18080 cookie A check
server tomcat02-instance1 192.168.60.157:8080 cookie A check
server tomcat02-instance2 192.168.60.157:18080 cookie A check


Reply via email to