https://redmine.lighttpd.net/https://redmine.lighttpd.net/favicon.ico?13667327412010-08-22T14:15:45Zlighty labsLighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=72052010-08-22T14:15:45Zstbuehler
<ul><li><strong>Target version</strong> changed from <i>1.4.28</i> to <i>1.4.29</i></li></ul> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=72972010-11-22T17:52:10Znitrox
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Need Feedback</i></li></ul> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=72982010-11-22T17:53:20Znitrox
<ul></ul><p>Its a variable, so you can set whatever you like and adapt to your needs, other httpd´s set even way lower defaults. Any reasonable facts why this should be changed?</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=72992010-11-22T18:03:48ZOlaf-van-der-Spek
<ul></ul><p>Apache has 100: <a class="external" href="http://httpd.apache.org/docs/2.2/mod/core.html#maxkeepaliverequests">http://httpd.apache.org/docs/2.2/mod/core.html#maxkeepaliverequests</a><br />If you think sensible defaults aren't good for Lighttpd, don't change it. ;)</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=73002010-11-22T18:04:36ZOlaf-van-der-Spek
<ul></ul><p>Nginx has 100: <a class="external" href="http://wiki.nginx.org/NginxHttpCoreModule#keepalive_requests">http://wiki.nginx.org/NginxHttpCoreModule#keepalive_requests</a></p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=73362010-12-27T13:29:46Zlifeofguenter
<ul></ul><p>it would be great if things don't get changed "just because others do it too", but maybe in a more empirical way. Keep in mind: <a class="external" href="http://redmine.lighttpd.net/wiki/lighttpd/Docs:Performance#HTTP-Keep-Alive">http://redmine.lighttpd.net/wiki/lighttpd/Docs:Performance#HTTP-Keep-Alive</a> - and nobody told Apache's default settings was good/state-of-the-art</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=73372010-12-27T13:40:43ZOlaf-van-der-Spek
<ul></ul><p>lifeofguenter wrote:</p>
<blockquote>
<p>it would be great if things don't get changed "just because others do it too", but maybe in a more empirical way. Keep in mind:</p>
</blockquote>
<p>I didn't request it because others do it, but Nitrox brought up Apache as an (invalid) example.</p>
<blockquote>
<p><a class="external" href="http://redmine.lighttpd.net/wiki/lighttpd/Docs:Performance#HTTP-Keep-Alive">http://redmine.lighttpd.net/wiki/lighttpd/Docs:Performance#HTTP-Keep-Alive</a> - and nobody told Apache's default settings was good/state-of-the-art</p>
</blockquote>
<p>I have.</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=73452011-01-04T01:39:26Zkayohamid
<ul></ul><p>Now that all work is to 2.0 version of lighty, I think that we can test if it's better 100 or 16, right? Just set it to 100 and see what happens.</p>
<p>Yes, I know, 1.4.x still is the major release, but they is stable already, we can test it.</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=74242011-03-13T18:44:14Zstbuehler
<ul><li><strong>Status</strong> changed from <i>Need Feedback</i> to <i>Missing Feedback</i></li><li><strong>Target version</strong> deleted (<del><i>1.4.29</i></del>)</li></ul><p>No good reason provided to change it - just set it yourself.</p>
<p>And remember: the optimum is very likely to depend on your own setup, there is no generic "best" value.<br />16 should be enough so that resources for one page can be loaded without reconnecting (if your site needs more files, fix it :D - or change the value)</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=74312011-03-14T01:16:37ZOlaf-van-der-Spek
<ul></ul><p>stbuehler wrote:</p>
<blockquote>
<p>And remember: the optimum is very likely to depend on your own setup, there is no generic "best" value.</p>
</blockquote>
<p>What's the disadvantage of a higher value?<br />More fds needed? That's easily solved by a higher max fd limit.</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=74372011-03-21T11:34:24ZOlaf-van-der-Spek
<ul><li><strong>Status</strong> changed from <i>Missing Feedback</i> to <i>Reopened</i></li><li><strong>Target version</strong> set to <i>1.4.x</i></li></ul> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=92152016-03-29T15:14:11Zgstrauss
<ul><li><strong>Status</strong> changed from <i>Reopened</i> to <i>Missing Feedback</i></li></ul><p>server.max-keep-alive-requests = 16 is the default, but is easily configurable.</p>
<p>There is no reason to change this setting until empirical evidence is presented that there is both a benefit to doing so, and that the typical use case would benefit. Hence, this ticket is being withdrawn "Missing Feedback" and will be withdrawn with the same status if this ticket is reopened without providing empirical data supporting the request. Again, this setting is easily configurable, so this <strong>is not</strong> a bug and <strong>is not</strong> broken.</p>
<p>Looking in Apache source control, the DEFAULT_KEEPALIVE 100 setting in include/httpd.h was inherited into the Apache 2.0 branch from Apache 1.3.9 back in 1999. Looking back further into the history of the Apache 1.3 branch, DEFAULT_KEEPALIVE was changed from 5 to 100 back in 1997, in Apache 1.2b5 git-svn-id: <a class="external" href="https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@77500">https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@77500</a> 13f79535-47bb-0310-9956-ffa450edef68</p>
<p>For benchmarks using keep-alive, a higher setting will perform better. On the other hand, for better resource sharing on a busy site which is at or near max-connections, server.max-keep-alive-requests with a lower value is potentially fairer. The current value of 16 in lighttpd strikes a balance between allowing the usefulness of keep-alive and at the same time allowing other clients a chance to connect to a busy site serving peak max-connections.</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=102562016-07-16T12:50:53Zstbuehler
<ul><li><strong>Target version</strong> deleted (<del><i>1.4.x</i></del>)</li></ul> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=110172017-05-12T01:16:27Zgstrauss
<ul><li><strong>Subject</strong> changed from <i>server.max-keep-alive-requests = 16</i> to <i>set server.max-keep-alive-requests = 100</i></li><li><strong>Status</strong> changed from <i>Missing Feedback</i> to <i>Patch Pending</i></li><li><strong>Target version</strong> set to <i>1.4.46</i></li></ul><p>In 2014, the average number of objects per page on the top 1000 websites exceeded 100 objects per page.<br /><a class="external" href="http://www.websiteoptimization.com/speed/tweak/average-web-page/">http://www.websiteoptimization.com/speed/tweak/average-web-page/</a><br /><a class="external" href="http://www.yottaa.com/a-brief-history-of-web-page-size/">http://www.yottaa.com/a-brief-history-of-web-page-size/</a></p>
<p><a class="external" href="https://www.sitepoint.com/average-page-weight-increased-another-16-2015/">https://www.sitepoint.com/average-page-weight-increased-another-16-2015/</a></p>
<blockquote>
<p>The HTTP Archive Report, which collates technical information from half a million of the web’s most popular websites<br />...<br />101 HTTP file requests are made — up from 95 a year ago</p>
</blockquote>
<p><a class="external" href="http://httparchive.org/interesting.php">http://httparchive.org/interesting.php</a><br />Total Requests Per Page chart shows median website has 75-100 requests per page, and fewer than 12% of sites have <= 25 requests per page</p>
<p><a class="external" href="https://www.thinkwithgoogle.com/articles/mobile-page-speed-new-industry-benchmarks.html">https://www.thinkwithgoogle.com/articles/mobile-page-speed-new-industry-benchmarks.html</a><br />(see slideshow near bottom of article)</p>
<p>.</p>
<p>Given the above, the rise of mobile (where latency is more detrimental), the rise in HTTPS (where latency is more detrimental to setting up new connections due to increased round-trips), I am going to increase the <strong>default</strong> <code>server.max-keep-alive-requests</code> to 100, the same as is done in Apache and nginx. Even with caching and CDNs, many websites running lighttpd (and not setting <code>server.max-keep-alive-request</code>) will benefit from a large default.</p>
<p>This value is <em>of course</em> still configurable, and admins who find different settings are better for them should use those settings.</p> Lighttpd - Feature #2205: set server.max-keep-alive-requests = 100https://redmine.lighttpd.net/issues/2205?journal_id=110292017-05-16T03:30:08Zgstrauss
<ul><li><strong>Status</strong> changed from <i>Patch Pending</i> to <i>Fixed</i></li><li><strong>% Done</strong> changed from <i>0</i> to <i>100</i></li></ul><p>Applied in changeset <a class="changeset" title="[core] set server.max-keep-alive-requests = 100 (fixes #2205) median webpage in today's day and ..." href="https://redmine.lighttpd.net/projects/lighttpd/repository/14/revisions/07cde2cf0b290cdbbf6528e3ecf106297615f754">07cde2cf0b290cdbbf6528e3ecf106297615f754</a>.</p>