<?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: Time to learn CFCs once and for all!</title>
	<atom:link href="http://www.owenwebs.com/index.php/2008/09/15/time-to-learn-cfcs-once-and-for-all/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.owenwebs.com/2008/09/15/time-to-learn-cfcs-once-and-for-all/</link>
	<description>Music, Technology, Rants and Funnies - Randomness at its best!</description>
	<lastBuildDate>Mon, 12 Jul 2010 01:04:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: Robert Owen</title>
		<link>http://www.owenwebs.com/2008/09/15/time-to-learn-cfcs-once-and-for-all/comment-page-1/#comment-304</link>
		<dc:creator>Robert Owen</dc:creator>
		<pubDate>Tue, 19 May 2009 22:06:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.owenwebs.com/blog/index.cfm/2008/9/15/Time-to-learn-CFCs-once-and-for-all#comment-304</guid>
		<description>Yeah... I haven&#039;t posted my update to that yet... &quot;Things&quot; keep getting in the way. Thanks for the info though!! :-)</description>
		<content:encoded><![CDATA[<p>Yeah&#8230; I haven&#8217;t posted my update to that yet&#8230; &#8220;Things&#8221; keep getting in the way. Thanks for the info though!! <img src='http://www.owenwebs.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doug McCaughan</title>
		<link>http://www.owenwebs.com/2008/09/15/time-to-learn-cfcs-once-and-for-all/comment-page-1/#comment-302</link>
		<dc:creator>Doug McCaughan</dc:creator>
		<pubDate>Tue, 19 May 2009 15:19:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.owenwebs.com/blog/index.cfm/2008/9/15/Time-to-learn-CFCs-once-and-for-all#comment-302</guid>
		<description>Wow! I didn&#039;t realize that post was from Sept 08.</description>
		<content:encoded><![CDATA[<p>Wow! I didn&#8217;t realize that post was from Sept 08.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doug McCaughan</title>
		<link>http://www.owenwebs.com/2008/09/15/time-to-learn-cfcs-once-and-for-all/comment-page-1/#comment-301</link>
		<dc:creator>Doug McCaughan</dc:creator>
		<pubDate>Tue, 19 May 2009 09:55:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.owenwebs.com/blog/index.cfm/2008/9/15/Time-to-learn-CFCs-once-and-for-all#comment-301</guid>
		<description>As you work with CFCs you&#039;ll discover asynchronous gateways and that&#039;s where ColdFusion really become fun! I like being able to hand something to a server and say, &quot;get back to me with that.&quot;

I had a scrapper project once where the wholesaler would provide updated pricing and limited product information to a resellers via xml which was downloadable from a passworded administrative area but the xml file failed to contain product descriptions leaving the resellers the arduous chore of manually creating descriptions for new products and the impossible chore of recognizing which existing products had updated descriptions. 

The XML part was easy. A scheduled task ran nightly that used CFHTTP to log in and grab the XML file, it was processed updating prices, removing out-of-stock or retired products, and logged its results with CFLOG.

The descriptions was more difficult. The database only had a couple thousand products but that was enough to timeout the connection when trying to loop over all the products and use CFHTTP to scrap the description from the manufacturer&#039;s website. The solution was to have a scheduled task run weekly that launched a .cfm template. That template would read a certain number of products from the reseller database (which had been updated in the XML process) which I think was 500. Then with those ids it would call a CFC which was set up as an asynchronous gateway. The CFC would loop through that smaller number of ids and use CFHTTP to get product descriptions avoiding timeout issues and of course log its results with CFLOG. Since it is an asynchronous gateway, several batches of ids could be fetched at once, that is, ids 1-500 could be scrapped simultaneously with ids 501-1000 and 1001-1500...

That was actually one of my favorite projects.</description>
		<content:encoded><![CDATA[<p>As you work with CFCs you&#8217;ll discover asynchronous gateways and that&#8217;s where ColdFusion really become fun! I like being able to hand something to a server and say, &#8220;get back to me with that.&#8221;</p>
<p>I had a scrapper project once where the wholesaler would provide updated pricing and limited product information to a resellers via xml which was downloadable from a passworded administrative area but the xml file failed to contain product descriptions leaving the resellers the arduous chore of manually creating descriptions for new products and the impossible chore of recognizing which existing products had updated descriptions. </p>
<p>The XML part was easy. A scheduled task ran nightly that used CFHTTP to log in and grab the XML file, it was processed updating prices, removing out-of-stock or retired products, and logged its results with CFLOG.</p>
<p>The descriptions was more difficult. The database only had a couple thousand products but that was enough to timeout the connection when trying to loop over all the products and use CFHTTP to scrap the description from the manufacturer&#8217;s website. The solution was to have a scheduled task run weekly that launched a .cfm template. That template would read a certain number of products from the reseller database (which had been updated in the XML process) which I think was 500. Then with those ids it would call a CFC which was set up as an asynchronous gateway. The CFC would loop through that smaller number of ids and use CFHTTP to get product descriptions avoiding timeout issues and of course log its results with CFLOG. Since it is an asynchronous gateway, several batches of ids could be fetched at once, that is, ids 1-500 could be scrapped simultaneously with ids 501-1000 and 1001-1500&#8230;</p>
<p>That was actually one of my favorite projects.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
