Dear all,
I am comparing 1.6.1 with 1.5.12. Following are the relevant snippets from the
configuration file:
global
maxconn 100
defaults
option http-keep-alive
option clitcpka
option srvtcpka
frontend private-frontend
maxconn 100
mode http
bind IP1:80
default_backend private-backend
backend private-backend
http-reuse always (only in the 1.6.1 configuration)
server IP2 IP2:80 maxconn 10
Client runs a single command to retrieve file of 128 bytes:
ab -k -n 20 -c 12 http://<IP1>/128
Tcpdump shows that 12 connections were established to the frontend, 10
connections
were then made to the server, and after the 10 were serviced once (GET), two new
connections were opened to the server and serviced once (GET), finally
8 requests
were done on the first set of server connections. Finally all 12
connections were
closed together. There is no difference in #packets between 1.5.12 and
1.6.1 or the
sequence of packets.
How do I actually re-use idle connections? Do I need to run ab's in
parallel with
some delay, etc, to see old connections being reused? I also ran separately the
following script to get file of 4K, to introduce parallel connections
with delay's, etc:
for i in {1..20}
do
ab -k -n 100 -c 50 http://10.34.73.174/4K &
sleep 0.4
done
wait
But the total# packets for 1.5.12 and 1.6.1 were similar (no drops in tcpdump,
no Connection drop in client, with 24.6K packets for 1.5.12 and 24.8K packets
for 1.6.1). Could someone please let me know what I should change in the
configuration or the client to see the effect of http-reuse?
Thanks,
- Krishna Kumar