<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>lighty's life: PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz</title>
    <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz</title>
      <description>&lt;p&gt;I just uploaded the 3rd pre-release of lighttpd 1.4.12:&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.lighttpd.net/download/lighttpd-1.4.12-20060724-0947.tar.gz"&gt;http://www.lighttpd.net/download/lighttpd-1.4.12-20060724-0947.tar.gz&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;This pre-release should work on most platforms and it mainly got improvements for our &lt;a href="http://mongrel.rubyforge.org/index.html"&gt;mongrel&lt;/a&gt; users. A small test has shown that we can even improve the performance of mongrel by balancing over 2 local instances (on a single-cpu machine).&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m using it here against 2 mongrels:&lt;/p&gt;


&lt;pre&gt;
$SERVER["socket"] == ":1446" {
  proxy-core.balancer = "round-robin" 
  proxy-core.protocol = "http" 
  proxy-core.backends = ( "127.0.0.1:3000", "127.0.0.1:3001" )
}
&lt;/pre&gt;

My small rails app got started with mongrel:
&lt;pre&gt;
$ RAILS_ENV="production" mongrel_rails start --port 3000
$ RAILS_ENV="production" mongrel_rails start --port 3001
&lt;/pre&gt;

	&lt;p&gt;The performance with of the RR-LB was tested with ab, run 3 times:&lt;/p&gt;


&lt;pre&gt;
$ ab -c 20 -n 500 http://127.0.0.1:1446/expenses/
  Requests per second:    22.67 [#/sec] (mean)
  Requests per second:    22.68 [#/sec] (mean)
  Requests per second:    22.97 [#/sec] (mean)
&lt;/pre&gt;

In top the cpu-time was split nicely:
&lt;pre&gt;
  PID  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
31104 26748  23m 2468 S 42.6  3.4   0:30.09 mongrel_rails
31168 27216  23m 2472 R 40.3  3.4   0:30.10 mongrel_rails
28509  9728 4900 2600 S  5.6  0.7   0:03.91 lighttpd
&lt;/pre&gt;
Against a single mongrel, without lighty, to measure the native performance:
&lt;pre&gt;
$ ab -c 20 -n 500 http://127.0.0.1:3000/expenses/
  Requests per second:    20.51 [#/sec] (mean)
  Requests per second:    20.42 [#/sec] (mean)
  Requests per second:    20.65 [#/sec] (mean)
&lt;/pre&gt;

	&lt;p&gt;&lt;b&gt;Conclusion:&lt;/b&gt; 2 mongrels are faster than one (even on a single &lt;span class="caps"&gt;CPU&lt;/span&gt; machine).&lt;/p&gt;


	&lt;p&gt;To get more background on mod_proxy_core check out:&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt; &lt;a href="http://blog.lighttpd.net/articles/2006/07/19/hash-balancing-with-mod_proxy_core"&gt;load-balancers&lt;/a&gt; (hash, fair, rr)&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://blog.lighttpd.net/articles/2006/07/15/the-new-mod_proxy_core"&gt;scheduling in the plugin instead of the kernel&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;fail-over handling&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://blog.lighttpd.net/articles/2006/07/22/mod_proxy_core-got-x-sendfile-support"&gt;x-sendfile&lt;/a&gt;
and
&lt;a href="http://blog.lighttpd.net/articles/2006/07/22/x-sendfiles-new-friend-x-rewrite"&gt;x-rewrite-*&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;keep-alive for &lt;span class="caps"&gt;HTTP&lt;/span&gt;&lt;/li&gt;
		&lt;li&gt;&lt;span class="caps"&gt;HTTP&lt;/span&gt;/1.1&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://blog.lighttpd.net/articles/2006/07/18/reverse-proxying-mod_proxy_core"&gt;header-rewriting&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;</description>
      <pubDate>Mon, 24 Jul 2006 12:52:00 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:7ef0d9d1-3c21-4020-b447-a91da9be4c4b</guid>
      <author>jan</author>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz</link>
      <trackback:ping>http://blog.lighttpd.net/articles/trackback/1833</trackback:ping>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by Claudio Perez Gamayo</title>
      <description>same error in my VPS using ubuntu dapper, the second request kills lighty</description>
      <pubDate>Tue, 08 Aug 2006 11:00:11 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:d560f739-f89e-4ec7-9ac5-515bb3511f6f</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1924</link>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by Paul Ingles</title>
      <description>I tried the 1.4.12 pre-release on my VPS today, it seems that after servicing one set of requests through Mongrel, the second kills it.

Inside the logs I see:
&lt;pre&gt;
log.c.139: (trace) server started
mod_proxy_core.c.1354: (error) connection is in a unexpected state at close-time: 24
fdevent_poll.c.26: (error) Ooh, Ooh, Ooh. Something is not good ... going down
&lt;/pre&gt;

Not too sure what's causing it, if you want me to check anything out I'll happily take a peek.</description>
      <pubDate>Fri, 04 Aug 2006 10:39:04 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:ada74419-cede-4c1f-9623-c119f9dc7b1e</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1909</link>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by ray.slakinski@gmail.com</title>
      <description>I'm getting the same thing as you Ezra on my OSX box.  I'll wait to see if the final build is any better, or you can contact me to test.</description>
      <pubDate>Tue, 01 Aug 2006 15:53:15 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:630374fa-4bd6-4eeb-8fb2-a965a8f9eaa2</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1886</link>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by chernousov</title>
      <description>&lt;a href="http://trac.lighttpd.net/trac/ticket/771" rel="nofollow"&gt;http://trac.lighttpd.net/trac/ticket/771&lt;/a&gt; check this out, I think this serious bug also exists in this prerelease.</description>
      <pubDate>Fri, 28 Jul 2006 09:18:04 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:6336ef0a-c400-47ab-9fda-cda329c593b4</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1859</link>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by Ezra Zygmuntowicz</title>
      <description>Hey Jan, great work on all of this. I was able to get a rails action with a simple database query and small view render to run at 113req/sec with 3 mongrels behind the latest pre-release on linux. THe proxy_core is shaping up to be pretty sweet. I cannot build the latest pre release on OSX however. I can build 1.4.11 fine but the pre release errors out of make with this:

&lt;pre&gt;
/usr/bin/ld: Undefined symbols:
_proxy_fastcgi_get_request_chunk
_proxy_fastcgi_parse_response_header
_proxy_fastcgi_stream_decoder
collect2: ld returned 1 exit status
make[2]: *** [mod_proxy_core.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
&lt;/pre&gt;

Is there aything special I have to do to build on OSX?</description>
      <pubDate>Tue, 25 Jul 2006 23:43:11 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:ccf4101d-3b0f-4d17-a11e-48f824dcf5af</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1847</link>
    </item>
    <item>
      <title>"PRE-RELEASE: lighttpd-1.4.12-20060724-0947.tar.gz" by tobi</title>
      <description>Would it be possible to change lighty so that if a server.document-root is specified for the block that it will try to satisfy requests itself from the file system before handing them out to the proxy? This would make this kind of setup enormously more useful. </description>
      <pubDate>Mon, 24 Jul 2006 20:41:53 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:6844ace9-4758-4a17-a6e8-fcb116676a55</guid>
      <link>http://blog.lighttpd.net/articles/2006/07/24/pre-release-lighttpd-1-4-12-20060724-0947-tar-gz#comment-1842</link>
    </item>
  </channel>
</rss>
