Re: [PATCH] Add persistent-https to contrib
From: Jeff King <hidden>
Date: 2016-06-15 22:53:54
On Thu, May 24, 2012 at 01:46:36PM -0700, Shawn O. Pearce wrote:
quoted
quoted
Nice numbers. And as clever as I find this helper-wrapping-a-helper solution, I wonder if the right layer for a fix isn't inside curl. It already keeps an ssl session-id cache in memory; how hard would it be to turn that into an on-disk cache?...quoted
Well, this helper "solution" also has the benefit of HTTP keep-alive working across Git command invocations.
True. It also works even when the server does not support ssl id caching.
Here is plaintext HTTP, where the benefit is from HTTP keep-alive:
(for i in {1..5}; do time git ls-remote
http://android.googlesource.com/tools/repo >/dev/null;done) 2>&1 |
grep real
real 0m0.098s
real 0m0.097s
real 0m0.106s
real 0m0.095s
real 0m0.105s
(for i in {1..5}; do time git ls-remote
persistent-http://android.googlesource.com/tools/repo >/dev/null;done)
2>&1 | grep real
real 0m0.134s
real 0m0.065s
real 0m0.063s
real 0m0.061s
real 0m0.067s
Notice we still save 30ms or so in this case. That is about the RTT
for my workstation to that server. :-)Nice. I assumed most of your speedup was coming from dropping the SSL setup, but it seems that a good chunk of it is just the TCP setup. Thanks for providing numbers. -Peff