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)  			{ | 
