<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Ruby EventMachine - The Speed Demon</title>
	<atom:link href="http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/</link>
	<description>A goal is a dream with a deadline.</description>
	<pubDate>Sun, 14 Mar 2010 14:07:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-212661</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Mon, 14 Sep 2009 13:23:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-212661</guid>
		<description>Purab, you can use the "thin" webserver to serve Rails, instead of mongrel or phusion passenger. That's the best way to get the benefits of Eventmachine with Rails (there are downsides as well). Look into "async-thin" as well.

The code above is better suited for standalone applications.</description>
		<content:encoded><![CDATA[<p>Purab, you can use the &#8220;thin&#8221; webserver to serve Rails, instead of mongrel or phusion passenger. That&#8217;s the best way to get the benefits of Eventmachine with Rails (there are downsides as well). Look into &#8220;async-thin&#8221; as well.</p>
<p>The code above is better suited for standalone applications.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: purab kharat</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-212628</link>
		<dc:creator>purab kharat</dc:creator>
		<pubDate>Mon, 14 Sep 2009 09:53:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-212628</guid>
		<description>Where to add this code in rails project...first tell where to put these files in rails project.</description>
		<content:encoded><![CDATA[<p>Where to add this code in rails project&#8230;first tell where to put these files in rails project.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Fibers &#38; Cooperative Scheduling in Ruby - igvita.com</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-193392</link>
		<dc:creator>Fibers &#38; Cooperative Scheduling in Ruby - igvita.com</dc:creator>
		<pubDate>Wed, 13 May 2009 17:43:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-193392</guid>
		<description>[...] and asynchronous programming models are great candidates for application of Fibers. Ruby EventMachine allows us to asynchronously defer blocks of code to be executed when the resource (socket, file [...]</description>
		<content:encoded><![CDATA[<p>[...] and asynchronous programming models are great candidates for application of Fibers. Ruby EventMachine allows us to asynchronously defer blocks of code to be executed when the resource (socket, file [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Markus Jais on software development &#187; 9 websites about Ruby/EventMachine</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-158915</link>
		<dc:creator>Markus Jais on software development &#187; 9 websites about Ruby/EventMachine</dc:creator>
		<pubDate>Fri, 09 Jan 2009 21:36:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-158915</guid>
		<description>[...] Ruby EventMachine - The speed demon. A very good introduction to EventMachine. [...]</description>
		<content:encoded><![CDATA[<p>[...] Ruby EventMachine - The speed demon. A very good introduction to EventMachine. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tin&#8217;s Blog &#187; [转载］Ruby的并发的一些基本限制</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-149431</link>
		<dc:creator>Tin&#8217;s Blog &#187; [转载］Ruby的并发的一些基本限制</dc:creator>
		<pubDate>Sat, 29 Nov 2008 08:28:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-149431</guid>
		<description>[...] is powered by a cluster of app servers (Mongrel, Ebb, Thin), and alternative strategies like EventMachine, and Revactor (equivalents of Twisted in Python) are gaining ground as a simple way to defer [...]</description>
		<content:encoded><![CDATA[<p>[...] is powered by a cluster of app servers (Mongrel, Ebb, Thin), and alternative strategies like EventMachine, and Revactor (equivalents of Twisted in Python) are gaining ground as a simple way to defer [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Concurrency is a Myth in Ruby - igvita.com</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-145930</link>
		<dc:creator>Concurrency is a Myth in Ruby - igvita.com</dc:creator>
		<pubDate>Thu, 13 Nov 2008 17:16:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-145930</guid>
		<description>[...] is powered by a cluster of app servers (Mongrel, Ebb, Thin), and alternative strategies like EventMachine, and Revactor (equivalents of Twisted in Python) are gaining ground as a simple way to defer and [...]</description>
		<content:encoded><![CDATA[<p>[...] is powered by a cluster of app servers (Mongrel, Ebb, Thin), and alternative strategies like EventMachine, and Revactor (equivalents of Twisted in Python) are gaining ground as a simple way to defer and [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Asynchronous DB: DBSlayer &#38; HTTP - igvita.com</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-110345</link>
		<dc:creator>Asynchronous DB: DBSlayer &#38; HTTP - igvita.com</dc:creator>
		<pubDate>Mon, 11 Aug 2008 16:12:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-110345</guid>
		<description>[...] to easily turn any HTTP request into a non-blocking request! Borrowing some sample code from my previous post on Ruby EventMachine, we have an easy Ruby web-server (port 8082) which makes an asynchronous DB call to fetch the [...]</description>
		<content:encoded><![CDATA[<p>[...] to easily turn any HTTP request into a non-blocking request! Borrowing some sample code from my previous post on Ruby EventMachine, we have an easy Ruby web-server (port 8082) which makes an asynchronous DB call to fetch the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-104022</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Mon, 16 Jun 2008 00:37:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-104022</guid>
		<description>Jens, that's a great point. As odd as it sounds: it's so refreshing to work in a shared nothing state of mind!</description>
		<content:encoded><![CDATA[<p>Jens, that&#8217;s a great point. As odd as it sounds: it&#8217;s so refreshing to work in a shared nothing state of mind!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jens Alfke</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-103928</link>
		<dc:creator>Jens Alfke</dc:creator>
		<pubDate>Tue, 10 Jun 2008 14:49:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-103928</guid>
		<description>This all sounds very familiar to me, as it's the way the Mac OS X frameworks (CFNetwork and Cocoa) operate. Nice to see this approach being used elsewhere!

One other advantage you didn't point out is that, by avoiding multithreading where possible, you can leave your code simpler and easier to read (and debug!) since it doesn't have to deal with deadlocks or race conditions. I've written lots of networked Cocoa code and almost never had to deal with thread synchronization or locking, thank god.</description>
		<content:encoded><![CDATA[<p>This all sounds very familiar to me, as it&#8217;s the way the Mac OS X frameworks (CFNetwork and Cocoa) operate. Nice to see this approach being used elsewhere!</p>
<p>One other advantage you didn&#8217;t point out is that, by avoiding multithreading where possible, you can leave your code simpler and easier to read (and debug!) since it doesn&#8217;t have to deal with deadlocks or race conditions. I&#8217;ve written lots of networked Cocoa code and almost never had to deal with thread synchronization or locking, thank god.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ilya Grigorik</title>
		<link>http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/comment-page-1/#comment-103828</link>
		<dc:creator>Ilya Grigorik</dc:creator>
		<pubDate>Fri, 06 Jun 2008 12:13:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.igvita.com/2008/05/27/ruby-eventmachine-the-speed-demon/#comment-103828</guid>
		<description>Jan, good point, here are the results:

&lt;blockquote&gt;
Concurrency Level:      20
Time taken for tests:   4.61886 seconds
Complete requests:      40
&lt;/blockquote&gt;</description>
		<content:encoded><![CDATA[<p>Jan, good point, here are the results:</p>
<blockquote><p>
Concurrency Level:      20<br />
Time taken for tests:   4.61886 seconds<br />
Complete requests:      40
</p></blockquote>
]]></content:encoded>
	</item>
</channel>
</rss>
