Achieved!!

Once again: this is some super cool mojo!!!

> On Oct 5, 2015, at 10:57 AM, Graham Leggett <[email protected]> wrote:
> 
> On 05 Oct 2015, at 3:41 PM, Jim Jagielski <[email protected]> wrote:
> 
>> Of course, this could also result in the issue we currently
>> have w/ APR in which APR itself lags behind what httpd itself
>> needs and we end up add stuff to httpd anyway...
>> 
>> Hmmmm...
> 
> This was my approach:
> 
> I wanted the moon on a stick.
> 
> What exactly constituted a moon on a stick? I wanted all of the following:
> 
> - I wanted to make httpd asynchronous, and decisively allow httpd to join the 
> list of servers that can support hundreds of thousands of concurrent requests 
> across the board, not just as a special case for specific content (files).
> 
> - I didn’t want to wait. This means I wanted whatever change I made to be 
> backport-able to httpd v2.4. I don’t care to wait 5 years for httpd v2.6 to 
> finally to appear as the default version in stable OS distros.
> 
> - I wanted to work with what was already there. That meant making the 
> existing ap_filter API and the existing buckets work with backwards 
> compatible changes to httpd and no changes to apr/apr-util.
> 
> - I wanted a mechanism that was not brittle. This is probably the hardest 
> part of async programming, how do you prevent something spinning or hanging? 
> When the new mechanism is used wrong the thread just becomes synchronous 
> until the data is written and eventually works anyway, which is existing 
> behaviour and not the end of the world.
> 
> I am aware that some people have said that it couldn’t be done in httpd’s 
> design. I figured let me test that hypothesis by trying anyway, the worst 
> that could happen was that they were right but the server could at least be 
> improved as best it could. I believe however that there is a good chance the 
> moon on a stick has been achieved.
> 
> Regards,
> Graham
> —
> 

Reply via email to