On Thu, May 24, 2012 at 01:46:36PM -0700, Shawn O. Pearce wrote: > >> 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? > ... > > 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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html