httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jess Holle <je...@ptc.com>
Subject Re: Speeding up mod_proxy_balancer on Windows
Date Mon, 13 Oct 2008 21:00:49 GMT
Ruediger Pluem wrote:
> On 10/13/2008 09:37 PM, Jess Holle wrote:
>   
>> Ruediger Pluem wrote:
>>     
>>> So if noone finds a registry entry to stop this RFC violating behaviour
>>>       
>> I'd love to see this solved by such a discovery, "option 0".
>>     
>>> I see only two options on Windows:
>>>
>>> 1. Fiddle around with GetTcpTable.
>>>       
>> I've attached my incomplete code in this regard (as a diff against
>> 2.2.9, which is what I used as the base for my changes) for what they're
>>     
> Mind to attach this as a unified diff
Already did -- I goofed the first time...
>> worth.  There are TO_DO notes where I know I'm missing stuff.  I tested
>> basic use of GetTcpTable(), which solved the problem, but haven't
>> completed my conversion to caching this data -- in part because I don't
>> know where to allocate an lock to arbitrate access to this cached data.
>>     
> I guess the post config hook would be the correct place to create such a mutex.
> Depending on what type of mutex you need a call to apr_global_mutex_child_init
> is due additionally in the child_init hook. Have a look at other caching modules
> in httpd that have to deal with this like ldap or on trunk the small objects caches.
>   
Thanks for the pointer.
>>> 2. Allow connectiontimeout to somehow accept milliseconds.  
>>>       
>> Or a floating point number?
>>
>> Unfortunately this would seem to impact actual connection timeouts as an
>> undesired side-effect of trying to address Windows' bad treatment of
>> RSTs, right?
>>     
> Not directly as you can interpret an integer value of an existing configuration
> also as a float, but I would like to keep the value an integer. This should be
> doable the way I proposed (< 100 seconds >= 100 milliseconds), but comments on
> this approach are welcome.
>   
The range-based interpretation just seems too subtle to me, but I'm 
probably biased.  I've used floating point seconds for configuration in 
my own server code after having been burned by having to switch from 
seconds to milliseconds to nanoseconds, etc.  I'd rather hide the 
implementation's units from the user.  I still use an integer when I 
wish to assert that nothing below a second is allowable and don't see 
any value in being able to specify 2.5 in addition to 2 and 3, though.

--
Jess Holle


Mime
View raw message