<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>New RIFERS blogs entries from Geert Bevin in category terracotta</title>
		<link>http://rifers.org/blogs</link>
		<description>The feeds of the Rifers community blogs</description>
		<language>en</language>
		<copyright>Copyright of the content contained is attributed to the original authors</copyright>
		<pubDate>Thu, 28 Aug 2008 17:56:31 +0200</pubDate>
		<managingEditor>Rifers Blogs: https://rifers.org/blogs</managingEditor>
		
			<item>
				<title>Videocast : Terracotta tuning and statistics recorder</title>
				<link>http://rifers.org/blogs/gbevin/2008/7/4/videocast_terracotta_tuning_stat</link>
				<description>&lt;p&gt;At this year&apos;s TSSJS Europe in Prague, we recorded a demo of how to tune an application for Terracotta. By changing the granularity of locks, I demonstrate how our statistics recorder allows you to visualize the application&apos;s behavior. This makes is easy to get a cluster-wide view of your application&apos;s characteristics and makes it a lot easy to identify areas that can be optimized.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://library.theserverside.com/detail/RES/1214576610_869.html?asrc=RSS_BP_KABPSOFTDEV&quot;&gt;You can watch the webcast here&lt;/a&gt;, after filling in a simple registration form.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;</description>
				<pubDate>Fri, 04 Jul 2008 09:48:42 +0200</pubDate>
				<author>Geert Bevin</author>
				<guid>http://rifers.org/blogs/gbevin/2008/7/4/videocast_terracotta_tuning_stat</guid>
			</item>
		
			<item>
				<title>Terracotta lightning talk at Fosdem 2008</title>
				<link>http://rifers.org/blogs/gbevin/2008/2/15/terracotta_lightning_talk</link>
				<description>The yearly open-source Fosdem conference takes place again in Brussels on February the 23rd and the 24th.&lt;br /&gt;
&lt;br /&gt;
I&apos;m giving a 15 minute lightning talk about Terracotta on Saturday the 23rd at 15h40. Given the available time, I will not be able to say much and will just try to wet everybody&apos;s appetite. I&apos;ll stick around for a while afterwards to answer question and give demos and such.&lt;br /&gt;
&lt;br /&gt;
You can find the details here:&lt;br /&gt;
&lt;a href=&quot;http://fosdem.org/2008/schedule/events/456&quot; target=&quot;_blank&quot;&gt;http://fosdem.org/2008/schedule/events/456&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Looking forward to the conference and catching up with everyone in real life &lt;img src=&quot;http://rifers.org/images/blog/emoticon-nose.gif&quot; width=&quot;16&quot; height=&quot;16&quot; alt=&quot;:-)&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
</description>
				<pubDate>Fri, 15 Feb 2008 11:09:33 +0100</pubDate>
				<author>Geert Bevin</author>
				<guid>http://rifers.org/blogs/gbevin/2008/2/15/terracotta_lightning_talk</guid>
			</item>
		
			<item>
				<title>Profiling Terracotta clients with YourKit is dead easy</title>
				<link>http://rifers.org/blogs/gbevin/2007/10/25/profiling_terracotta_yourkit</link>
				<description>&lt;p&gt;While tracking down some performance characteristics of the ConcurrentHashMap class with &lt;a href=&quot;http://terracotta.org&quot;&gt;Terracotta&lt;/a&gt;, I decided to run it through the &lt;a href=&quot;http://yourkit.com&quot;&gt;YourKit&lt;/a&gt; profiler.&lt;/p&gt;
&lt;p&gt;I remember that a while ago, someone on the Terracotta mailing list was having difficulties profiling client applications since we instrument the JDK classes through a bootjar. I thus expected to run into problems with YourKit. To my surprise I didn&apos;t experience a single one. Following the instructions on the YourKit website to &lt;a href=&quot;http://yourkit.com/docs/70/help/getting_started/running_with_profiler/agent.jsp&quot;&gt;manually enable profiling&lt;/a&gt;, did exactly what was expected and I was thus able to get all the information I wanted.&lt;/p&gt;
&lt;p&gt;As an example, this is similar to the command line that I executed:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;java &lt;span style=&quot;background-color: #ffffbb&quot;&gt;-agentlib:yjpagent=sampling,onexit=snapshot&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-cp /path/to/project/classes&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-Dtc.install-root=$TC_INSTALL_DIR&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-Xbootclasspath/p:$TC_INSTALL_DIR/lib/dso-boot/dso-boot-hotspot_linux_160_02.jar&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-Dtc.config=tc-config.xml&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;com.MyMainClass&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Just thought that this might be helpful to know &lt;img src=&quot;http://rifers.org/images/blog/emoticon-wink.gif&quot; width=&quot;16&quot; height=&quot;16&quot; alt=&quot;;)&quot; /&gt;&lt;/p&gt;</description>
				<pubDate>Thu, 25 Oct 2007 12:17:50 +0200</pubDate>
				<author>Geert Bevin</author>
				<guid>http://rifers.org/blogs/gbevin/2007/10/25/profiling_terracotta_yourkit</guid>
			</item>
		
			<item>
				<title>Speaking at NFJS Europe : &quot;Exploring Terracotta - JVM clustering in the real world&quot;</title>
				<link>http://rifers.org/blogs/gbevin/2007/8/9/nfjs_europe_terracotta</link>
				<description>&lt;script language=&quot;JavaScript&quot; type=&quot;text/javascript&quot;&gt;
&lt;!--
document.write(&apos;&lt;div style=&quot;float: right; width: 125px; margin-left: 10px; margin-bottom: 10px;&quot;&gt;&lt;object classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot; codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0&quot; width=&quot;125&quot; height=&quot;125&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://nfjs-exchange.com/images/banners/125x125_nfjs-rif660_offer_wii.swf&quot; /&gt;&lt;param name=&quot;quality&quot; value=&quot;high&quot; /&gt;&lt;embed src=&quot;http://nfjs-exchange.com/images/banners/125x125_nfjs-rif660_offer_wii.swf&quot; quality=&quot;high&quot; pluginspage=&quot;http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash&quot; type=&quot;application/x-shockwave-flash&quot; width=&quot;125&quot; height=&quot;125&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&apos;);
//--&gt;
&lt;/script&gt;
&lt;p&gt;I&apos;m speaking at NFJS in London at the end of this month about &lt;a href=&quot;http://terracotta.org&quot;&gt;Terracotta&lt;/a&gt;. You can find the abstract of my session quoted below. The &lt;a href=&quot;http://www.nofluffjuststuff.com/show_agenda.jsp?showId=93&quot;&gt;schedule looks very interesting&lt;/a&gt; and I&apos;m excited that NFJS is finally taking place in Europe too.&lt;/p&gt;
&lt;p&gt;If you&apos;re interested in going, you might want to click on the banner to the right or to use the promotion code &lt;b&gt;NFJS-RIF660&lt;/b&gt;. This will give you a free Nintendo Wii with your registration (woohooo, I love my Wii!).&lt;/p&gt;
&lt;p&gt;See you at NFJS Europe.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;I also have &lt;a href=&quot;http://rifers.org/blogs/gbevin/2007/8/9/nfjs_europe_rife&quot;&gt;another session continuations, RIFE and Terracotta&lt;/a&gt;.&lt;/i&gt;&lt;/p&gt;
&lt;blockquote style=&quot;border: 1px gray solid; text-color: #333333; padding: 1em;&quot;&gt;
&lt;div style=&quot;margin: 0 0.5em;&quot;&gt;
&lt;p&gt;&lt;b&gt;Exploring Terracotta : JVM clustering in the real world&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Terracotta provides open-source clustering for Java and removes the burden from the developer. Instead of having to design and code against a specific API, the characteristics of the Java Memory Model (wait, lock, notify) are automatically translated towards a multiple node architecture. This clustering solution guarantees proper handling of concurrency, fail-over, distributed method invocation and efficient state propagation by simply instrumenting your Java bytecode and providing you with Network Attached Memory. This is however so generic that it&apos;s sometimes difficult realize which use-cases can benefit from it. &lt;/p&gt;

&lt;p&gt;This presentation introduces the basic principles of Terracotta and explains how to configure and integrate it into your application. Afterwards, we&apos;ll go through a collection of real-world examples that all benefit from JVM-level clustering. These include: serialization-less HTTP session clustering, fine-grained distributed caches, workload distribution through master-worker, shared state and events between server and desktop tiers, clustered Spring and other OSS frameworks ... and more. &lt;/p&gt;

&lt;p&gt;Garbage collection made the JVM responsible for memory management. Take the plunge and experience how Terracotta does the same for clustering.&lt;/p&gt;
&lt;/div&gt;
&lt;/blockquote&gt;</description>
				<pubDate>Thu, 09 Aug 2007 20:39:33 +0200</pubDate>
				<author>Geert Bevin</author>
				<guid>http://rifers.org/blogs/gbevin/2007/8/9/nfjs_europe_terracotta</guid>
			</item>
		
			<item>
				<title>Clustered Drupal through Quercus, Terracotta and Ehcache</title>
				<link>http://rifers.org/blogs/gbevin/2007/8/1/clustered_drupal_terracotta</link>
				<description>&lt;p&gt;Caucho created an impressive Java implementation of PHP that runs in Resin, called &lt;a href=&quot;http://www.caucho.com/resin-3.0/quercus/&quot;&gt;Quercus&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I regularly hear people complain about the scalability of Drupal on PHP and after looking at the layer cache implementation, it seems that they use the database as a cache. This is understandable since short of using &lt;a href=&quot;http://www.danga.com/memcached/&quot;&gt;memcached&lt;/a&gt;, PHP doesn&apos;t support preserving object state across requests. However, tunneling everything through the database is bound to create a bottleneck.&lt;/p&gt;
&lt;p&gt;Quercus has a neat &lt;a href=&quot;http://www.caucho.com/resin-3.0/quercus/tutorial/module/index.xtp&quot;&gt;module system&lt;/a&gt; that allows the creation of PHP functions in Java. So I wondered if I could use &lt;a href=&quot;http://www.terracotta.org&quot;&gt;Terracotta&lt;/a&gt; together with &lt;a href=&quot;http://ehcache.sourceforge.net/&quot;&gt;Ehcache&lt;/a&gt; to replace Drupal&apos;s caching system with a more scalable solution.&lt;/p&gt;
&lt;p&gt;After some tinkering and experimenting I got it to work. I did have to resort to some ugly hacks, since Terracotta doesn&apos;t officially support Resin yet (they inject their own system classloader which doesn&apos;t play well with how we do stuff). I also didn&apos;t do any performance tests, nor went through all the Drupal features to check if everything still worked.&lt;/p&gt;
&lt;p&gt;I think this prototype is very interesting though, since it gives a glimpse of what is possible nowadays in the Java world when creating &apos;technology mash-ups&apos; (for the lack up a better term). Who would have thought a year ago that you would be able to improve the scalability of a PHP CMS by using JVM-level clustering, makes my mind spin if I think about it.&lt;/p&gt;
&lt;p&gt;If you want to try this out for yourself, I posted &lt;a href=&quot;https://wiki.terracotta.org/confluence/display/wiki/Drupal&quot;&gt;detailed instructions on our wiki&lt;/a&gt;. I&apos;m interested in knowing what your findings are and if you have any improvements to what I did, please reach out and let me know.&lt;/p&gt;</description>
				<pubDate>Wed, 01 Aug 2007 14:54:12 +0200</pubDate>
				<author>Geert Bevin</author>
				<guid>http://rifers.org/blogs/gbevin/2007/8/1/clustered_drupal_terracotta</guid>
			</item>
		
		
	</channel>
</rss>