diff options
author | Monty Brandenberg <monty@lindenlab.com> | 2013-07-29 16:09:22 -0400 |
---|---|---|
committer | Monty Brandenberg <monty@lindenlab.com> | 2013-07-29 16:09:22 -0400 |
commit | eb2869bd7fe3ea856c7d25a1518699cb905a8954 (patch) | |
tree | 373e976de8bddb92847a93f16ad95e3b987d52f6 /indra | |
parent | c9e64823c05a493e6c926deebff1b0aaf0fb50be (diff) |
SH-4371 Reduce 22mS inter-conenction latency on HTTP operations.
Simple change dropped this value by 7-10mS or so. Any time we
complete an operation on a transport pass, arrange to skip the
run-loop sleep so that we fill a possible empty slot as quickly
as possible. With pipelining, this kind of thing should become
unnecessary but for now, we'll do this to increase throughput.
Diffstat (limited to 'indra')
-rwxr-xr-x | indra/llcorehttp/_httplibcurl.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/indra/llcorehttp/_httplibcurl.cpp b/indra/llcorehttp/_httplibcurl.cpp index d187697e7b..b079dff864 100755 --- a/indra/llcorehttp/_httplibcurl.cpp +++ b/indra/llcorehttp/_httplibcurl.cpp @@ -132,12 +132,10 @@ HttpService::ELoopSpeed HttpLibcurl::processTransport() CURL * handle(msg->easy_handle); CURLcode result(msg->data.result); - if (completeRequest(mMultiHandles[policy_class], handle, result)) - { - // Request is still active, don't get too sleepy - ret = HttpService::NORMAL; - } - handle = NULL; // No longer valid on return + completeRequest(mMultiHandles[policy_class], handle, result); + handle = NULL; // No longer valid on return + ret = HttpService::NORMAL; // If anything completes, we may have a free slot. + // Turning around quickly reduces connection gap by 7-10mS. } else if (CURLMSG_NONE == msg->msg) { |