You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Paul Spangler <pa...@ni.com> on 2015/10/15 22:53:53 UTC

Re: [PATCH 57300] mod_session save optimization

On 8/20/2015 4:58 PM, Paul Spangler wrote:
> Hello,
>
> The bug report contains a more detailed explanation of the patch, but
> there are some points I thought might lead to some discussion.
>
> First a quick summary of the issue: mod_session writes out the session
> every request even if there aren't any changes to the data. This makes
> some sense when the session has a max age and the expiry value needs to
> be refreshed. However, there isn't likely to be much benefit in
> repeatedly refreshing the expiry by a few milliseconds, possibly
> generating database traffic each time. This patch proposes a new
> directive to define an interval of time where the expiry doesn't need to
> be refreshed if there are no session data changes.
>
> 1. We had a hard time coming up with a name for the directive. The patch
> goes with SessionExpiryUpdateInterval, being the interval of time that
> may pass before updating the expiry value is required. I don't know if
> there are any existing directives with a similar function that we should
> mimic instead.
>
> 2. The patch includes a behavior change independent of the new directive
> when using sessions without a max age: if the data hasn't changed, don't
> write out the session. Most noticeably, this means new sessions that
> never get data are discarded without being saved.
>
> 3. I wasn't sure how best to add tests for a new directive since the
> test server won't start if the directive is missing. The patch that
> includes the test changes look for the 2.5 version to know the new
> directive is there, and will require a modification if/when the
> directive is back-ported to 2.4 to enable the new tests.
>
> https://bz.apache.org/bugzilla/show_bug.cgi?id=57300
>
> Thanks for your consideration.
>
Bump in case anyone is interested now that the list has died down a bit.

-- 
Paul Spangler
LabVIEW R&D
National Instruments

Re: [PATCH 57300] mod_session save optimization

Posted by Yann Ylavic <yl...@gmail.com>.
Hello Paul,

sorry for the delay...

On Thu, Oct 15, 2015 at 10:53 PM, Paul Spangler <pa...@ni.com> wrote:
> On 8/20/2015 4:58 PM, Paul Spangler wrote:
>>
>> The bug report contains a more detailed explanation of the patch, but
>> there are some points I thought might lead to some discussion.

Didn't look at the details yet, but the approach looks sensible.
The test suite is appreciated too!

>>
> Bump in case anyone is interested now that the list has died down a bit.

Will take a closer look and comment/commit soon, reporting on bugzilla.
Thanks for the patch anyway, and your perseverence :)

Regards,
Yann.

Re: [PATCH 57300] mod_session save optimization

Posted by Jacob Champion <ch...@gmail.com>.
On 10/15/2015 01:53 PM, Paul Spangler wrote:
> Bump in case anyone is interested now that the list has died down a bit.

I'm a little biased :) but I am still interested.

 From a practical angle, Paul's patch makes session-based applications 
usable with databases that have more expensive writes (SQLite being a 
key example). Without this feature, we saw the server's performance 
crater when a moderate number (100's) of requests were made in a short 
period of time.

 From a technical angle, it doesn't make sense to me that every request 
results in a write to the database when using mod_session_dbd. As it 
stands now, I don't feel like mod_session is production-ready when 
combined with a SQLite backend.

 From an emotional angle, Paul has been patiently pinging the list with 
no response for two months now. Surely he deserves some reply, even if 
it's just an explanation of why there is no interest in the feature? It 
feels like mod_session and friends need some love.

--Jacob