Well, I don't have good news to report... doesn't seem to be a
significant change in behavior...
nginx:
Requests/sec:   5082.43
Requests/sec:   5111.94
Requests/sec:   5063.27

2.4.6 - First UDS patch:
Requests/sec:   4733.09
Requests/sec:   4529.49
Requests/sec:   4573.27

2.4.6 - r1511313 + new UDS patch + r1543174:
Requests/sec:   3774.41
Requests/sec:   3878.02
Requests/sec:   3852.34

Will try to look into this next week...

--
Daniel Ruggeri

On 11/18/2013 6:37 PM, Daniel Ruggeri wrote:
> On 11/18/2013 3:38 PM, Jim Jagielski wrote:
>> Can you retry with this applied:
>>
>>      https://svn.apache.org/viewvc?view=revision&revision=1543174
> Definitely. I'll report back tomorrow so long as the universe wills
> it... but one last note....
>
> I failed to mention in my original notes that there were two hunks that
> didn't apply cleanly to 2.4.6 - these appear to be from this change:
> https://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/modules/proxy/proxy_util.c?r1=1511313&r2=1511312&pathrev=1511313
> ... which is in the neighborhood of what you adjusted in r1543174... but
> doesn't appear to conflict directly.
>
> I'm thinking I should also apply r1511313 to 2.4.6 as a prereq to
> r1543174 in order to remove ambiguity... I'm frankly not sure if the
> machine was performing DNS lookups during the test or not (and I have
> only given this a cursory review), but that would *definitely* account
> for a measurable slowdown.
>
> The context of what was rejected:
>> --- modules/proxy/proxy_util.c
>> +++ modules/proxy/proxy_util.c
>> @@ -2228,7 +2324,8 @@
>>              conn->port = uri->port;
>>          }
>>          socket_cleanup(conn);
>> -        if (!worker->s->is_address_reusable || worker->s->disablereuse) {
>> +        if (!(*worker->s->uds_path) &&
>> +            (!worker->s->is_address_reusable ||
>> worker->s->disablereuse)) {
>>              /*
>>               * Only do a lookup if we should not reuse the backend
>> address.
>>               * Otherwise we will look it up once for the worker.
>> @@ -2239,7 +2336,7 @@
>>                                          conn->pool);
>>          }
>>      }
>> -    if (worker->s->is_address_reusable && !worker->s->disablereuse) {
>> +    if (!(*worker->s->uds_path) && worker->s->is_address_reusable &&
>> !worker->s->disablereuse) {
>>          /*
>>           * Looking up the backend address for the worker only makes
>> sense if
>>           * we can reuse the address.
> I'll have to see what the delta with both patches applied turns out to be...
>
> --
> Daniel Ruggeri
>

Reply via email to