<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Joyeur &#187; Joyent Labs</title>
	<atom:link href="http://joyeur.com/category/joyent-labs/feed/" rel="self" type="application/rss+xml" />
	<link>http://joyeur.com</link>
	<description>Joyent&#039;s Weblog</description>
	<lastBuildDate>Tue, 15 May 2012 15:59:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='joyeur.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/c37750016912bc7b25a17e3263f0fe23?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Joyeur &#187; Joyent Labs</title>
		<link>http://joyeur.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://joyeur.com/osd.xml" title="Joyeur" />
	<atom:link rel='hub' href='http://joyeur.com/?pushpress=hub'/>
		<item>
		<title>Scaling WordPress on Joyent Cloud: Part One</title>
		<link>http://joyeur.com/2011/08/19/scaling-wordpress-in-the-joyent-public-cloud-part-1/</link>
		<comments>http://joyeur.com/2011/08/19/scaling-wordpress-in-the-joyent-public-cloud-part-1/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 16:27:09 +0000</pubDate>
		<dc:creator>Nima</dc:creator>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[Joyent Labs]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[apc]]></category>
		<category><![CDATA[Joyent]]></category>
		<category><![CDATA[memcached]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[NewRelic]]></category>
		<category><![CDATA[TechMeme]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://joyeur.com/?p=2911</guid>
		<description><![CDATA[The following is a repost of Peter Yorke&#8217;s original blog at peteryorke.net. Peter is a Solution Architect at Joyent with a passion for performance and scalability &#8212; he&#8217;s the man with a bucket of awesome-sauce and a big paint brush in hand. In my role as a Solution Architect at Joyent, I get asked about [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=2911&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://joyeur.files.wordpress.com/2011/08/wordpress-logo-hoz-rgb.png?w=500" alt="" title="wordpress-logo-hoz-rgb"   class="aligncenter size-full wp-image-2920" /></p>
<p><em>The following is a repost of Peter Yorke&#8217;s original blog at <a href="http://peteryorke.net/?p=307">peteryorke.net</a>. Peter is a Solution Architect at Joyent with a passion for performance and scalability &#8212; he&#8217;s the man with a bucket of awesome-sauce and a big paint brush in hand. </em></p>
<p>In my role as a Solution Architect at Joyent, I get asked about ways to increase performance and scale of WordPress sites running on <a href="http://www.joyentcloud.com/">Joyent Cloud</a>. In this article, I discuss things you can do to get your WP site optimized at the server and database levels. Here are just a few easy prescriptive solutions for your Joyent SmartMachines:</p>
<p><strong>APC:</strong> <a href="http://php.net/manual/en/book.apc.php">APC</a> or Alternative PHP Cache compiles and caches your PHP code so that it doesnt need to be rerun each time a page is requested. This provides 2x-to-5x <a href="http://en.wikipedia.org/wiki/PHP_accelerator">performance</a> increase to page load times. To enable, uncomment the <code>extension=apc.so</code> line in your php.ini file. Restart the Apache process.</p>
<p><span id="more-2911"></span></p>
<p><strong>Memcached:</strong> <a href="http://memcached.org/">Memcached</a> is a free and open source, high performance, distributed memory object caching system that is used to remediate high database loads in WordPress sites by caching database results in memory. To enable, uncomment the <code>extension=memcache.so</code> in your php.ini file. Restart the Apache process.</p>
<p><strong>W3 Total Cache:</strong> <a href="http://wordpress.org/extend/plugins/w3-total-cache/">W3 Total Cache</a> is a WordPress plugin that works well in the Joyent environment for caching various elements of WP sites. It can be used to leverage APC and memcached. Page and Object caches use APC and database uses memcached in the <a href="http://wordpress.org/extend/plugins/w3-total-cache/faq/">configuration.</a></p>
<p><strong>Use NewRelic Application Monitoring agents:</strong> Joyent provides the <a href="http://newrelic.com/">NewRelic</a> Standard application optimization and performance monitoring agents for free to our customers. Using NewRelic to validate system or code changes can tell you what your end user experience is as well as current load conditions of the various application layers like PHP, memcached or database. </p>
<ul>
<li><strong>Step 1:</strong> <a href="http://newrelic.com/about/partners/joyent">Sign up for your free account</a>.</li>
<li><strong>Step 2:</strong> Download the agent and follow the instructions to begin monitoring your app from the NewRelic dashboard. If you need more advanced features, you can upgrade to <a href="http://newrelic.com/pricing/details">Professional or Business</a> and enjoy a 15% discount as a Joyent customer.</li>
</ul>
<p><strong>Optimize your Apache config:</strong> Tuning your mpm and file descriptors will help with scaling your sites. The <a href="http://wiki.joyent.com/">Joyent Wiki </a>has a has an excellent <a href="http://wiki.joyent.com/display/gen/Tuning+Apache">article</a> on tuning the Apache <a href="http://httpd.apache.org/docs/2.2/mod/worker.html">mpm.conf</a> and increasing file discriptors.</p>
<p><strong>Give your MySQL database enough memory</strong> Use the innodb database format and giving as much of your memory as you can without causing your machine to swap. I use a simple formula of 75% of memory to the <a href="http://mysql.com/">MySQL</a> config <a href="http://dev.mysql.com/doc/refman/5.0/en/innodb-parameters.html">parameter</a> <code>innodb_buffer_pool_size</code> on a dedicated MySQL server. This will cache most of your tables in memory thereby increasing the database response times. Watching this in NewRelic, you should be able to see if your are driving down the latency times. Then you can slowly bump up the memory until performance doesn&#8217;t improve any more.</p>
<p><em>Read more on scaling WordPress in posts <a href="http://joyeur.com/2011/09/13/scaling-wordpress-on-joyentcloud-part-two/">two</a> and <a href="http://joyeur.com/2011/12/14/scaling-wordpress-on-joyent-cloud-part-three/">three</a>.</em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/joyeur.wordpress.com/2911/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/joyeur.wordpress.com/2911/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/joyeur.wordpress.com/2911/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=2911&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://joyeur.com/2011/08/19/scaling-wordpress-in-the-joyent-public-cloud-part-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9b6989f4202ca2c16526d4b428e804e4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">badnima</media:title>
		</media:content>

		<media:content url="http://joyeur.files.wordpress.com/2011/08/wordpress-logo-hoz-rgb.png" medium="image">
			<media:title type="html">wordpress-logo-hoz-rgb</media:title>
		</media:content>
	</item>
		<item>
		<title>Executive Speaker Series: Bryan Cantrill and Brendan Gregg on Cloud Analytics</title>
		<link>http://joyeur.com/2011/01/24/executive-speaker-series-bryan-cantrill-and-brendan-gregg-on-cloud-analytics/</link>
		<comments>http://joyeur.com/2011/01/24/executive-speaker-series-bryan-cantrill-and-brendan-gregg-on-cloud-analytics/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 17:41:46 +0000</pubDate>
		<dc:creator>Jackson West</dc:creator>
				<category><![CDATA[DTrace]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Joyent Labs]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://joyeur.com/?p=1551</guid>
		<description><![CDATA[Download: 1080p, 720p, 360p. Last week, we hosted the second installment of our ongoing executive speaker series here at the office in San Francisco. Titled &#8220;Solving Big Problems with Real-time Visibility into Cloud Performance,&#8221; Joyent Cloud&#8217;s General Manager Steve Tuck introduced Bryan Cantrill, our Vice President of Engineering, and Lead Performance Engineer Brendan Gregg who [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=1551&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<embed src='http://widgets.vodpod.com/w/video_embed/Video.5411862' type='application/x-shockwave-flash' AllowScriptAccess='sameDomain' pluginspage='http://www.macromedia.com/go/getflashplayer' wmode='transparent' flashvars='' width='500' height='412' />
<p>Download: <a href="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.1080p.mp4">1080p</a>, <a href="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.720p.mp4">720p</a>, <a href="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.sd.m4v">360p</a>.</p>
<p>Last week, we hosted the second installment of our ongoing executive speaker series here at the office in San Francisco.  Titled &#8220;<a href="http://joyeur.com/2011/01/14/join-us-at-joyent-bryan-cantrill-and-brendan-gregg-on-cloud-performance/">Solving Big Problems with Real-time Visibility into Cloud Performance</a>,&#8221; Joyent Cloud&#8217;s General Manager Steve Tuck introduced Bryan Cantrill, our Vice President of Engineering, and Lead Performance Engineer Brendan Gregg who spent over an hour discussing how they use tools like DTrace to pinpoint and solve vexing performance problems in systems.  Bryan and Brendan showed off the latest visualization tools, gave some real-world examples of monitoring large production systems, offered a road map for what Joyent customers can expect as we make these tools available, and answered some questions from the audience in the room and watching remotely <a href="http://www.ustream.tv/channel/cloud-analytics">via the live stream</a>.</p>
<p>We have more of these events planned, so keep an eye here on Joyeur or on <a href="http://www.twitter.com/joyent">Twitter</a> for details on the next installment.</p>
<p><span id="more-1551"></span></p>
<embed src='http://widgets.vodpod.com/w/video_embed/Video.5414930' type='application/x-shockwave-flash' AllowScriptAccess='sameDomain' pluginspage='http://www.macromedia.com/go/getflashplayer' wmode='transparent' flashvars='' width='500' height='412' />
<p>Download: <a href="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.1080p.mp4">1080p</a>, <a href="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.720p.mp4">720p</a>, <a href="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.sd.m4v">360p</a>.</p>
<embed src='http://widgets.vodpod.com/w/video_embed/Video.5414935' type='application/x-shockwave-flash' AllowScriptAccess='sameDomain' pluginspage='http://www.macromedia.com/go/getflashplayer' wmode='transparent' flashvars='' width='500' height='412' />
<p>Download: <a href="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.1080p.mp4">1080p</a>, <a href="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.720p.mp4">720p</a>, <a href="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.sd.m4v">360p</a>.</p>
<embed src='http://widgets.vodpod.com/w/video_embed/Video.5414944' type='application/x-shockwave-flash' AllowScriptAccess='sameDomain' pluginspage='http://www.macromedia.com/go/getflashplayer' wmode='transparent' flashvars='' width='500' height='412' />
<p>Download: <a href="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.1080p.mp4">1080p</a>, <a href="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.720p.mp4">720p</a>, <a href="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.sd.m4v">360p</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/joyeur.wordpress.com/1551/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/joyeur.wordpress.com/1551/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/joyeur.wordpress.com/1551/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=1551&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://joyeur.com/2011/01/24/executive-speaker-series-bryan-cantrill-and-brendan-gregg-on-cloud-analytics/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
<enclosure url="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.1080p.mp4" length="667308510" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.1080p.mp4" length="608418974" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.1080p.mp4" length="595417952" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.720p.mp4" length="310788764" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499197/499197_2011-01-23-070737.sd.m4v" length="158132902" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.720p.mp4" length="348553450" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499201/499201_2011-01-23-071501.sd.m4v" length="177752724" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.720p.mp4" length="317318072" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.720p.mp4" length="0" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.sd.m4v" length="0" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499193/499193_2011-01-23-070233.sd.m4v" length="0" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.1080p.mp4" length="567337326" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.1080p.mp4" length="567337326" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.720p.mp4" length="0" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.sd.m4v" length="150974067" type="video/mp4" />
<enclosure url="http://serve.castfire.com/video/499199/499199_2011-01-23-071339.720p.mp4" length="296243271" type="video/mp4" />
	
		<media:content url="http://1.gravatar.com/avatar/7b38f1442adc67f3ffa9f20034cefc47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jacksonwest</media:title>
		</media:content>
	</item>
		<item>
		<title>Running Glassfish on Joyent</title>
		<link>http://joyeur.com/2008/10/09/running-glassfish-on-joyent/</link>
		<comments>http://joyeur.com/2008/10/09/running-glassfish-on-joyent/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 23:16:19 +0000</pubDate>
		<dc:creator>Rod Boothby</dc:creator>
				<category><![CDATA[Joyent Labs]]></category>

		<guid isPermaLink="false">http://joycomad.joyent.us/blog/uncategorized/running-glassfish-on-joyent/</guid>
		<description><![CDATA[Joyent is the ideal cloud computing platform for running Sun&#8217;s brilliant Glassfish server. Why? Because, on Joyent, you can run Glassfish at 64-bit straight out of the box. Today, Kent Langley threw together a quick wiki page entitled How to Install GlassFish on Joyent Accelerator to help you get up and running.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=391&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Joyent is the ideal <a href="http://www.joyent.com">cloud computing</a> platform for running Sun&#8217;s brilliant <a href="https://glassfish.dev.java.net/">Glassfish</a> server.   Why?   Because, on Joyent, you can run Glassfish at 64-bit straight out of the box.</p>
<p>Today, Kent Langley threw together a quick wiki page entitled <a href="http://wiki.joyent.com/all-accelerators:kb:glassfish">How to Install GlassFish on Joyent Accelerator</a> to help you get up and running.</p>
<p><img src="http://www.joyeur.com/images/131.png" alt="" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/joyeur.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/joyeur.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/joyeur.wordpress.com/391/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=391&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://joyeur.com/2008/10/09/running-glassfish-on-joyent/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3bddff6939b593f6a7b21d3a53f8683e?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">g2-3bddff6939b593f6a7b21d3a53f8683e</media:title>
		</media:content>

		<media:content url="http://www.joyeur.com/images/131.png" medium="image" />
	</item>
		<item>
		<title>Cloud Computing using Gigaspaces XAP on Joyent Accelerators</title>
		<link>http://joyeur.com/2008/09/24/cloud-computing-using-gigaspaces-xap-on-joyent-accelerators/</link>
		<comments>http://joyeur.com/2008/09/24/cloud-computing-using-gigaspaces-xap-on-joyent-accelerators/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 21:07:28 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Joyent Labs]]></category>

		<guid isPermaLink="false">http://joycomad.joyent.us/blog/uncategorized/cloud-computing-using-gigaspaces-xap-on-joyent-accelerators/</guid>
		<description><![CDATA[Hello everyone. My name is Kent Langley. This is my first post on the Joyeur weblog and this is the first post in what should be a series over time about the things going on inside and emerging from Joyent Labs. One of the exciting projects that has been in the lab is a Java [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=389&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Hello everyone.  My name is Kent Langley.  This is my first post on the Joyeur weblog and this is the first post in what should be a series over time about the things going on inside and emerging from <a href="http://www.joyent.com/developers/joyentLabs/">Joyent Labs</a>.</p>
<p>One of the exciting projects that has been in the lab is a Java based distributed application server called <a href="http://www.gigaspaces.com/cloud" title="Gigaspaces XAP">Gigaspaces <span class="caps">XAP</span></a>.  We&#8217;ve been testing it on Joyent Accelerators in the labs over the last few weeks.  I have been working closely with the Gigaspaces team to build out a deployment of Gigaspaces <span class="caps">XAP</span> and test a fully functional test application, a Monte Carlo simulation.</p>
<p>The team at Gigaspaces I have been working with are <a href="http://gevaperry.typepad.com/" title="Owen">Owen</a>, <a href="http://dekeltankel.blogspot.com/" title="Dekel">Dekel</a>, and <a href="http://gevaperry.typepad.com/" title="Geva">Geva</a>.  They have been a real pleasure to work with.  I was excited about opportunity because I&#8217;ve been following Gigaspaces since December 2004 when I first contacted Geva and downloaded an early version of Gigaspaces software that was then called Gigaspaces Enterprise Application Grid 4.</p>
<p>Fast forward to now and we&#8217;re working with Gigaspaces <span class="caps">XAP</span> 6.5 and having a good bit of fun as well.</p>
<p><strong>About the Monte Carlo Simulation: (Copied directly, with minor edits, from Owen&#8217;s blog entry about this applications. Read: Owen&#8217;s work)</strong></p>
<p>The application is rich in the patterns it utilizes:</p>
<ul>
<li><span class="caps">SBA</span> &#8211; Space Based Applications &#8211; (Colocated spaces with workers)</li>
<li>Master-worker (remote workers which scale dynamically when the workload is too high)</li>
<li>Spring Remoting on top of GigaSpaces – the aggregation work is achieved utilizing our Sync Remoting</li>
</ul>
<p><strong>Application Description:</strong></p>
<p>Historical information regarding several funds is used to predict the future behavior of those funds over a 20 year time period with Minute by Minute fluctuation in prices being calculated and applied.  These funds are grouped in different formations into Portfolios and the entire Portfolio assessed for its growth over the same 20 year period.  In the end, the best combination of funds within a portfolio is determined and reported and the best and worst behaving funds are also shown.  Technically, several portfolios and their associated funds are written as tasks into the system for analysis – the logic needed to process them and their historical information is sent along with them as well. Workers take the tasks, process the associated logic and return a result showing the outcome of the application of the expected variation in price for each fund in the portfolio over the designated 20 year period.  This is performed over a set of possible portfolios – each containing different variations of funds.  Each set is repeatedly simulated to avoid undo skewing and allow for better control of the randomness.  In the end, the client requests a summary of all the results which is created by a service that operates in parallel across the available spaces to take all the results and sort them and aggregate them to determine the most common, best [highest value portfolio], and worst [lowest value portfolio].  Finally, this information is returned to the client and printed out to the console.</p>
<p><strong>Test Environment Setup:</strong></p>
<p>We used three 4 GiB Joyent Accelerators with no custom modifications for this test.  We used Gigaspaces <span class="caps">XAP</span> 6.?.?.  We did have to make some very minor modifications to scripts to accommodate for the Accelerator environment.  We had our first test environment up well within an hour of test.  Later, we came back, deployed Gigaspaces <span class="caps">XAP</span> across all three machines and the always entertaining Owen managed the deployment and running of the Monte Carlo Simulation.</p>
<p><strong>Test Results:</strong></p>
<pre>These test results are taken directly from Dekel&#039;s notes during the tests.

    All tests were run with a single GSM (Grid Services Master) in unicast mode.

    *Run #1:*

    20 Iteration, 50 variants – 1000 different sets (in each set we run 20
    years of analysis for 3 stocks, including aggregating the results)

    GS (Grid Services) Cluster: 5 partitions, each with a
    backup, 1 worker per partition, 14 GSCs (Grid Service Container)

    Joyent: 2 X 4GiB Accelerators (8 cores
    machine)

    Run completed in: 2 seconds (compare to 1.5 minutes on a
    laptop)

    *Run #2:*

    200 Iteration, 50 variants – 10,000 different sets,

    GS Cluster: 5 partitions, each with a
    backup, 1 worker per partition, 14 GSCs

    Joyent: 2 X 4GiB Accelerators *
    * 1 GiB = 1,073,741,824 bytes
    * 1 GB = 1,000,000,000 bytes

    Run completed in: 22 seconds

    *Run #3:*

    200 Iteration, 500 variants – 100,000 different sets,

    GS Cluster: 5 partitions, each with a
    backup, 1 worker per partition, 14 GSCs

    Joyent: 2 X 4GiB Accelerators

    Run completed in: 266 seconds

    *Run #4:*
    Now we scale HW and Software in a click&quot;:

    200 Iteration, 500 variants – 100,000 different sets,

    GS Cluster: 5 partitions, each with a
    backup, 1 co-located worker per partition, up to 60 (scaling dynamically, no
    application down-time and no reconfiguration), 23 GSCs

    Joyent: 3 X 4GiB Accelerators

    1st iteration scaled from 1 to 19:
    133 seconds

    2nd iteration scaled from 19 to
    59: 108 seconds

    3rd iteration steady on 60
    workers (no effort on scaling the workers): 86
    seconds

    *Run #5*
    True SBA, scaled the number of partitions&quot;:

    200 Iteration, 500 variants – 100,000 different sets,

    GS Cluster: 8 partitions, each with a backup, 1 co-located worker per
    partition (15 total), 23 GSCs

    Joyent: 3 X 4GiB Accelerators

    We scale HW and SW by the same unit of
    scale – ~50% (2 to 3, 5 to 8)

    (Linear Scalability!!!: Expected 50% faster time than Run#3 = 177sec)

    Run completed in: 160 seconds

    *Run #6:*
    200 Iteration, 500 variants – 100,000 different sets,

    GS Cluster: 15 partitions, each with a backup, 1 co-located worker per
    partition (15 total), 23 GSCs

    Joyent: 3 X 4GiB Accelerators

    Re-configuration for 15 partitions –
    less than one minute. Only a few clicks! (undeploy, change a number in a pu.xml,
    redeploy, no need to shutdown the GS cluster - GSC)

    (Expected 3rd of the time for Run#3)

    Run completed in: 134 seconds

    *Run #7:*
    200 Iteration, 500 variants – 100,000 different sets,

    GS Cluster: 15 partitions, each with a backup, 1 co-located worker per
    partition (15 total), remote workers, 23 GSCs

    Joyent: 3 X 4Gib Accelerators

    Re-configuration for 15 partitions –
    less than one minute. Only a few clicks! (undeploy, change pu.xml, redeploy, no
    need to shutdown the GS cluster - GSC)

    1st iteration scaled from 1 to 15:
    87 seconds

    2nd iteration scaled from 15 to
    34: 81 seconds

    3rd iteration steady on 60
    workers (no effort on scaling the workers): 67
    seconds
</pre>
<p><img src="http://www.joyeur.com/images/130.png" alt="" /></p>
<p><strong>Conclusions and Thoughts:</strong></p>
<p>Cloud Computing is the act of deploying, elastically scaling, managing, and running Cloud Computing Applications on Cloud Computers.  Cloud Computing Applications are those applications that are well designed to run on Cloud Computers.  In this case, Joyent provided infrastructure as a service (IaaS).  Gigaspaces provided the Gigaspaces <span class="caps">XAP</span> Platform as a Service (PaaS).  A savvy developer, Owen, created a cloud computing software application, the Monte Carlo simulation.  We definitely did some Cloud Computing in this test!</p>
<p>In emerging from the Joyent Labs program we now know that Gigaspaces <span class="caps">XAP</span> is proven to run and scale on Joyent Accelerators.  We also showed during the tests that the sun Java stack is particularly powerful because <span class="caps">JVM</span>&#8217;s can scale vertically well beyond the 2 GiB limitations some other platforms may encounter.  For memory hungry applications this can be very useful.  In our tests we hit the limits of the 4 GiB accelerators.  But, we could have easily scaled vertically by adding more <span class="caps">RAM</span> and <span class="caps">CPU</span> to the 8, 16, or 32 GiB Acclerator quickly or scaled horizontally by simply adding more Gigaspaces <span class="caps">XAP</span> enabled Accelerators and <span class="caps">GSC</span> instances.</p>
<p>At one point, we wanted a little more horsepower for the application.  So, in a total of about 10 minutes I setup the Gigaspaces application on a new node I had handy and turned it over to Owen who very quickly configured his application and brought up the new nodes for more capacity during the test.</p>
<p>Some other exciting things about this exercise in the lab was that it was, in general, easy.  We added and removed nodes, scaled linearly, pulled nodes out, re-deployed the application in seconds to minutes, we processed large amounts of data, and we did all this in the cloud with really minimal efforts.</p>
<p>There is much more to the story, but I want to keep this blog post under 20 pages.  I look forward to continuing to work with the Gigaspaces team and exploring the many very interesting possibilities this work presents.</p>
<p>Soon I will also be posting Gigaspaces installation instructions to the knowledgebase.  So, stay tuned!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/joyeur.wordpress.com/389/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/joyeur.wordpress.com/389/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/joyeur.wordpress.com/389/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=joyeur.com&#038;blog=13003674&#038;post=389&#038;subd=joyeur&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://joyeur.com/2008/09/24/cloud-computing-using-gigaspaces-xap-on-joyent-accelerators/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/65dbf645b621820718097e1cc6d07993?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jason</media:title>
		</media:content>

		<media:content url="http://www.joyeur.com/images/130.png" medium="image" />
	</item>
	</channel>
</rss>
