[katello-devel] Katello on 16 core box - concurrency

Mike McCune mmccune at redhat.com
Fri Jan 13 21:56:47 UTC 2012


On 10/24/2011 01:43 AM, Lukas Zapletal wrote:
> On 10/20/2011 03:29 PM, Jeff Weiss wrote:
>>> I think **Pending Request Counting** (lbmethod=bybusyness) is what we
>>>>   want. This scheduler keeps track of how many requests each worker is
>>>>   assigned at present. A new request is automatically assigned to the
>>>>   worker with the **lowest number** of active requests. This is useful in
>>>>   the case of workers that queue incoming requests independently of
>>>>   Apache, to ensure that queue length stays even and a request is always
>>>>   given to the worker most likely to service it fastest.
>> Will this solve the problem though?  If thin1 has 1 request pending,
>> that's going to take 3 minutes, and thin2 has 5 requests pending that it
>> will service in 0.5 seconds total, thin1 is going to get the request,
>> right?  It's still the wrong choice- requests will still get stacked up
>> behind long-running tasks.
>>
>> The "correct" algorithm is for requests to be held in queue until at
>> least one of the thin processes is ready.  I think that is what HAProxy
>> does.
>
> Yeah, it won't help much. Could possibly help when server is more or
> less idling, but when queues fill up, then it will stuck.
>

just as a followup to this old thread, I just posted a wiki page + some 
code on how to reproduce and test this in a more simple manner for 
future efforts:

https://www.redhat.com/archives/katello-devel/2012-January/msg00042.html

Mike
-- 
Mike McCune
mmccune AT redhat.com
Red Hat Engineering       | Portland, OR
Systems Management        | 650.254.4248




More information about the katello-devel mailing list