On Fri, Nov 12, 2010 at 03:51:11PM +0100, Cyril Bonté wrote: (...) > > Do you know if keep-alive was involved in any of these tests ? > > I tried both, It's easier to reproduce without keep-alive. > Actually, I also met the issue with httperf. > > My configuration files : > # stunnel.conf > socket = l:TCP_NODELAY=1 > socket = r:TCP_NODELAY=1 > foreground=yes > pid=/var/run/stunnel.pid > unix-sockets-dir=/var/run > debug=3 > > [localhost-uxst] > cert = /home/cbonte/tmp/server.crt > key = /home/cbonte/tmp/server.key > accept=0.0.0.0:8443 > connect=/ssl.sock > TIMEOUTclose = 0 > ;sendproxy=yes > > [localhost-tcp] > cert = /home/cbonte/tmp/server.crt > key = /home/cbonte/tmp/server.key > accept=0.0.0.0:8444 > connect=127.0.0.1:8080 > TIMEOUTclose = 1 > ;sendproxy=yes > > # haproxy.conf > global > stats socket /var/run/haproxy.sock > > defaults > timeout server 60s > timeout client 60s > timeout connect 10s > > listen https-in > bind /var/run/ssl.sock user root mode 600 # accept-proxy > bind :8080 > > mode http > #option http-server-close > option httpclose > stats enable > > server local localhost:80 > > Using the UNIX Socket > httperf --server localhost --port 8443 --uri / --rate 100 --num-conn 1000 \ > --ssl --num-call 1 > => I see a lot of "readsocket: Invalid argument (22)" in stunnel > > Using the TCP Socket > httperf --server localhost --port 8444 --uri / --rate 100 --num-conn 1000 \ > --ssl --num-call 1 > => no error message
Thank you Cyril, I'll forward all that material to Emeric in case he finds a clue about that. I hope we're not hitting buffer size limits or things like this on the unix sockets :-/ TCP_NODELAY should not be set because it does not exist on the UNIX sockets, but I don't think there is any relation. More likely it's a matter of a connection limit or too fast reuse somewhere, and I'm not used to tune for that ! Thanks ! Willy

