<?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: Making ActiveResource 34x faster: QActiveResource</title>
	<atom:link href="http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/</link>
	<description></description>
	<lastBuildDate>Wed, 16 Mar 2011 20:49:34 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Gitfeed, Git to RSS and the growing collection of small hacks at Scott Wheeler</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-7235</link>
		<dc:creator>Gitfeed, Git to RSS and the growing collection of small hacks at Scott Wheeler</dc:creator>
		<pubDate>Fri, 21 May 2010 02:35:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-7235</guid>
		<description>[...] for reading data &#8212; basically a C++ implementation of the find method. Details in the company blog, or naturally on [...]</description>
		<content:encoded><![CDATA[<p>[...] for reading data &#8212; basically a C++ implementation of the find method. Details in the company blog, or naturally on [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vito Botta</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6994</link>
		<dc:creator>Vito Botta</dc:creator>
		<pubDate>Tue, 11 May 2010 23:22:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6994</guid>
		<description>Thanks for the speedy reply Scott - will definitely keep an eye on QAR ;)</description>
		<content:encoded><![CDATA[<p>Thanks for the speedy reply Scott &#8211; will definitely keep an eye on QAR <img src='http://blog.directededge.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Wheeler</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6986</link>
		<dc:creator>Scott Wheeler</dc:creator>
		<pubDate>Tue, 11 May 2010 15:01:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6986</guid>
		<description>It&#039;s quite similar in spirit to MonkeySupport, though attacking another part of the Rails stack. Honestly, I think Rails is grown up enough at this point that it&#039;d make sense for it to have C implementations of a lot of its hot points stuff and for them to not be outcasts in the project.</description>
		<content:encoded><![CDATA[<p>It&#8217;s quite similar in spirit to MonkeySupport, though attacking another part of the Rails stack. Honestly, I think Rails is grown up enough at this point that it&#8217;d make sense for it to have C implementations of a lot of its hot points stuff and for them to not be outcasts in the project.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Svoop</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6985</link>
		<dc:creator>Svoop</dc:creator>
		<pubDate>Tue, 11 May 2010 13:50:29 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6985</guid>
		<description>How does this compare to MonkeySupport?

http://www.railsinside.com/misc/315-monkeysupport-boosting-rails-with-patches-of-c.html</description>
		<content:encoded><![CDATA[<p>How does this compare to MonkeySupport?</p>
<p><a href="http://www.railsinside.com/misc/315-monkeysupport-boosting-rails-with-patches-of-c.html" rel="nofollow">http://www.railsinside.com/misc/315-monkeysupport-boosting-rails-with-patches-of-c.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Wheeler</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6984</link>
		<dc:creator>Scott Wheeler</dc:creator>
		<pubDate>Tue, 11 May 2010 11:41:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6984</guid>
		<description>Hey Vito --

At the moment QAR just does XML parsing (since that&#039;s where the use case was for us -- consuming AR APIs that we don&#039;t have control of). Some of the speedup is in object creation and using libcurl instead of Ruby&#039;s network stack, which you would get even with a JSON consumer, but a lot of the speedup is in XML parsing as well, so how much of a speedup you&#039;d get there really depends on how bad Ruby&#039;s JSON parsers are.  :-)

In principle it wouldn&#039;t be hard to extend QAR to JSON. Just the &lt;a href=&quot;http://github.com/directededge/QActiveResource/blob/master/QActiveResource.cpp#L228&quot; rel=&quot;nofollow&quot;&gt;reader&lt;/a&gt; function would need to be replaced and the &lt;a href=&quot;http://github.com/directededge/QActiveResource/blob/master/QActiveResource.cpp#L339&quot; rel=&quot;nofollow&quot;&gt;fetch&lt;/a&gt; function would need to be made a little smarter to decide which format to use.</description>
		<content:encoded><![CDATA[<p>Hey Vito &#8211;</p>
<p>At the moment QAR just does XML parsing (since that&#8217;s where the use case was for us &#8212; consuming AR APIs that we don&#8217;t have control of). Some of the speedup is in object creation and using libcurl instead of Ruby&#8217;s network stack, which you would get even with a JSON consumer, but a lot of the speedup is in XML parsing as well, so how much of a speedup you&#8217;d get there really depends on how bad Ruby&#8217;s JSON parsers are.  <img src='http://blog.directededge.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>In principle it wouldn&#8217;t be hard to extend QAR to JSON. Just the <a href="http://github.com/directededge/QActiveResource/blob/master/QActiveResource.cpp#L228" rel="nofollow">reader</a> function would need to be replaced and the <a href="http://github.com/directededge/QActiveResource/blob/master/QActiveResource.cpp#L339" rel="nofollow">fetch</a> function would need to be made a little smarter to decide which format to use.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vito Botta</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6983</link>
		<dc:creator>Vito Botta</dc:creator>
		<pubDate>Tue, 11 May 2010 11:28:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6983</guid>
		<description>Hi Scott,

those figures look stunning! I am working on both an API and a couple of client applications which make heavy use of ActiveResource to communicate with each other.

However, I am using JSON as serialisation format rather than XML. Would QAR work using JSON? And, if yes, would I still see that huge performance boost?

Thanks!</description>
		<content:encoded><![CDATA[<p>Hi Scott,</p>
<p>those figures look stunning! I am working on both an API and a couple of client applications which make heavy use of ActiveResource to communicate with each other.</p>
<p>However, I am using JSON as serialisation format rather than XML. Would QAR work using JSON? And, if yes, would I still see that huge performance boost?</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Wheeler</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6928</link>
		<dc:creator>Scott Wheeler</dc:creator>
		<pubDate>Thu, 06 May 2010 23:01:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6928</guid>
		<description>Hey Cody - nope, this wasn&#039;t with gzip, but the profiling was with files served from localhost, so I&#039;d assume it&#039;d only slow them down? Honestly I don&#039;t know how to force AR to use gzip/zlib, but it&#039;s easy enough from libcurl. :-)</description>
		<content:encoded><![CDATA[<p>Hey Cody &#8211; nope, this wasn&#8217;t with gzip, but the profiling was with files served from localhost, so I&#8217;d assume it&#8217;d only slow them down? Honestly I don&#8217;t know how to force AR to use gzip/zlib, but it&#8217;s easy enough from libcurl. <img src='http://blog.directededge.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Cody Fauser</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6927</link>
		<dc:creator>Cody Fauser</dc:creator>
		<pubDate>Thu, 06 May 2010 22:21:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6927</guid>
		<description>Scott,

Looks impessive! Are you taking advantage of gzip compression as well? I found that this reduces the size of API responses significantly. Fetching 250 products with Accept-Encoding: gzip is 7.5% of the size of the non-gzipped response.</description>
		<content:encoded><![CDATA[<p>Scott,</p>
<p>Looks impessive! Are you taking advantage of gzip compression as well? I found that this reduces the size of API responses significantly. Fetching 250 products with Accept-Encoding: gzip is 7.5% of the size of the non-gzipped response.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Wheeler</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6926</link>
		<dc:creator>Scott Wheeler</dc:creator>
		<pubDate>Thu, 06 May 2010 20:51:36 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6926</guid>
		<description>@edward – The GitHub links are in the post.  :-)</description>
		<content:encoded><![CDATA[<p>@edward – The GitHub links are in the post.  <img src='http://blog.directededge.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Edward Ocampo-Gooding</title>
		<link>http://blog.directededge.com/2010/05/06/making-activeresource-34x-faster-qactiveresource/comment-page-1/#comment-6925</link>
		<dc:creator>Edward Ocampo-Gooding</dc:creator>
		<pubDate>Thu, 06 May 2010 20:34:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.directededge.com/?p=619#comment-6925</guid>
		<description>Oh wow! Nice work Scott.

Any plans to open source this code?</description>
		<content:encoded><![CDATA[<p>Oh wow! Nice work Scott.</p>
<p>Any plans to open source this code?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

