<?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/"
	>

<channel>
	<title>Funnelink.com Blog &#187; Uncategorized</title>
	<atom:link href="http://wordpress.funnelink.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://wordpress.funnelink.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 29 Aug 2008 13:28:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>A test article with local video</title>
		<link>http://wordpress.funnelink.com/2008/08/29/a-test-article-with-local-video/</link>
		<comments>http://wordpress.funnelink.com/2008/08/29/a-test-article-with-local-video/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 13:17:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=32</guid>
		<description><![CDATA[Cum are loc inregistrarea la serviciul Flirt?
Expediati un mesaj cu textul Flirt limba numele sexul varsta la numarul 069.[limba] &#8211; limba de comunicare (Ro sau Ru), [nume] &#8211; numele cu care veti participa, [sex] &#8211; este sexul Dvs., m &#8211; barbat, w &#8211; femeie, [varsta] &#8211; varsta participantului, cifra de la 16 la 99 ani.
Dupa [...]]]></description>
			<content:encoded><![CDATA[<div class="big_div2_line" style="margin-bottom: 5px;">Cum are loc inregistrarea la serviciul Flirt?</div>
<p>Expediati un mesaj cu textul <strong>Flirt limba numele sexul varsta</strong> la numarul <strong>069</strong>.<strong>[limba]</strong> &#8211; limba de comunicare (Ro sau Ru), <strong>[nume]</strong> &#8211; numele cu care veti participa, <strong>[sex]</strong> &#8211; este sexul Dvs., m &#8211; barbat, w &#8211; femeie, <strong>[varsta]</strong> &#8211; varsta participantului, cifra de la 16 la 99 ani.</p>
<p>Dupa aceasta veti primi o intrebare, referitoare la preferintele Dvs., referitoare la partenerul cautat (tastati m ,w sau a).</p>
<p><img src="http://wordpress.funnelink.com/wp-content/plugins/flash-video-player/default_video_player.gif" /></p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/29/a-test-article-with-local-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Youtoube video test post</title>
		<link>http://wordpress.funnelink.com/2008/08/29/youtoube-video-test-post/</link>
		<comments>http://wordpress.funnelink.com/2008/08/29/youtoube-video-test-post/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 12:38:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=21</guid>
		<description><![CDATA[CS 61B: Data Structures &#8211; Fall 2006
Instructor: Jonathan Shewchuk
Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.
http://www.cs.berkeley.edu
Category: Education
Tags:
uc ucberkeley university california berkeley lecture computer

]]></description>
			<content:encoded><![CDATA[<h3>CS 61B: Data Structures &#8211; Fall 2006</h3>
<p>Instructor: Jonathan Shewchuk</p>
<p>Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.</p>
<p><a title="http://www.cs.berkeley.edu" dir="ltr" rel="nofollow" href="http://www.cs.berkeley.edu/" target="_blank">http://www.cs.berkeley.edu</a></p>
<p>Category: <a class="hLink category" onmousedown="urchinTracker('/Events/VideoWatch/VideoCategoryLink');" href="http://www.youtube.com/browse?s=mp&amp;t=t&amp;c=27">Education</a></p>
<p>Tags:</p>
<div id="watch-video-tags" class="floatL"><a class="hLink" href="http://www.youtube.com/results?search_query=uc&amp;search=tag">uc</a> <a class="hLink" href="http://www.youtube.com/results?search_query=ucberkeley&amp;search=tag">ucberkeley</a> <a class="hLink" href="http://www.youtube.com/results?search_query=university&amp;search=tag">university</a> <a class="hLink" href="http://www.youtube.com/results?search_query=california&amp;search=tag">california</a> <a class="hLink" href="http://www.youtube.com/results?search_query=berkeley&amp;search=tag">berkeley</a> <a class="hLink" href="http://www.youtube.com/results?search_query=lecture&amp;search=tag">lecture</a> <a class="hLink" href="http://www.youtube.com/results?search_query=computer&amp;search=tag">computer</a></div>
<p><object type="application/x-shockwave-flash" data="http://www.youtube.com/v/QMV45tHCYNI" width="425" height="355" wmode="transparent"><param name="movie" value="http://www.youtube.com/v/QMV45tHCYNI" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/29/youtoube-video-test-post/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Deploying a 1 Terabyte Cache using EhCache Server</title>
		<link>http://wordpress.funnelink.com/2008/08/29/deploying-a-1-terabyte-cache-using-ehcache-server/</link>
		<comments>http://wordpress.funnelink.com/2008/08/29/deploying-a-1-terabyte-cache-using-ehcache-server/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 12:06:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=16</guid>
		<description><![CDATA[Greg Luck, of the EhCache team, announced in early August the availability of SOAP and RESTful APIs for caching. As described in the documentation:
Ehcache now comes with a Cache Server, available as a WAR for most web containers, or as a standalone server. The Cache Server has two APIs: RESTful resource oriented, and SOAP. Both [...]]]></description>
			<content:encoded><![CDATA[<p>Greg Luck, of the <a href="http://ehcache.sourceforge.net/" target="_blank">EhCache</a> team, <a href="http://gregluck.com/blog/archives/2008/08/restful_resourc.html" target="_blank">announced in early August</a> the availability of SOAP and <a href="http://gregluck.com/blog/archives/2008/08/restful_resourc.html" target="_blank">RESTful APIs for caching</a>. As described in <a href="http://ehcache.sourceforge.net/documentation/cache_server.html" target="_blank">the documentation</a>:</p>
<blockquote><p>Ehcache now comes with a Cache Server, available as a WAR for most web containers, or as a standalone server. The Cache Server has two APIs: RESTful resource oriented, and SOAP. Both support clients in any programming language.</p></blockquote>
<p>In a follow up post, Greg outlines his thoughts on deployment options for a  theoretical 1 terabyte cache:</p>
<blockquote><p>The largest ehcache single instances run at around 20GB in memory. The largest disk stores run at 100Gb each. Add nodes together, with cache data partitioned across them, to get larger sizes. 50 nodes at 20GB gets you to 1 Terabyte.</p></blockquote>
<p>The first, and simplest, approach involves setting up several nodes running  ehcache server and have the client determine the server to use based on an object&#8217;s hashcode:</p>
<pre>String[] cacheservers = new String[]{
  "cacheserver0.company.com",
  "cacheserver1.company.com",
  "cacheserver2.company.com",
  "cacheserver3.company.com",
  "cacheserver4.company.com",
  "cacheserver5.company.com"
};
Object key = "123231";
int hash = Math.abs(key.hashCode());
int cacheserverIndex = hash % cacheservers.length;
String cacheserver =cacheservers[cacheserverIndex];</pre>
<p>To support redundancy, a load balancer is introduced, and each node runs two ehcache server instances, with replication between them enabled using the existing distributed caching options (RMI or JGroups). In this approach, clients would still determine their servers using the hashcode, but now failures are handled transparently behind the virtual IP assigned by the load balancer.</p>
<p>The third option Greg describes involves moving the responsibility for  routing requests to the load balancer.</p>
<p>The RESTful version of the EhCache Server is based on Jersey &#8211; the JSR 311 reference implementation. Paul Sandoz, one of the Jersey developers, <a href="http://blogs.sun.com/sandoz/entry/ehcache_using_jersey" target="_blank">discussed</a> how the client API of jersey could be used to access the cache  for creating and retrieving a sample XML document:</p>
<pre>// retrieving a node
Node n = r.accept("application/xml").get(DOMSource.class).getNode();
// creating a node
String xmlDocument = "...";
Client c = Client.create();
WebResource r = c.resource(<a href="http://localhost:8080/ehcache/rest/sampleCache2/2">http://localhost:8080/ehcache/rest/sampleCache2/2</a>);
r.type("application/xml").put(xmlDocument);</pre>
<p>So, in what scenarios would a RESTful cache be useful? <a href="http://www.thenewsbeforethenews.com/2008/08/04/restful-market-static-data-caches/" target="_blank">James Webster reports</a> on seeing an increase in adoption of  this architectural style in large enterprises:</p>
<blockquote><p>An architectural pattern that I have observed a few investment banks  implement is a distributed memory cache accessed via a <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer">RESTful</a> front-end over HTTP for providing access to market data (e.g.. stock prices, interest rate curves, or derived values like volatility surfaces &amp; correlations) and static data (e.g. counterparty details, settlement defaults). The distributed cache can be ‘easily’ scaled to hold massive data sets and the front-end allows the data to be accessed in a technology agnostic fashion, as long as the client can speak HTTP.</p></blockquote>
<p>As James points out, it will be interesting to see how long it will take  commercial vendors (such as <a href="http://www.oracle.com/technology/products/coherence/index.html" target="_blank">Oracle</a> and <a href="http://www.gigaspaces.com/edg" target="_blank">Gigaspaces</a>) to support RESTful interfaces in their  products.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/29/deploying-a-1-terabyte-cache-using-ehcache-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Natural Laws of Software Development &#8211; Deriving Agile Practices</title>
		<link>http://wordpress.funnelink.com/2008/08/29/9/</link>
		<comments>http://wordpress.funnelink.com/2008/08/29/9/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 11:25:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=9</guid>
		<description><![CDATA[
Summary
In this presentation filmed during Agile 2008, Ron Jeffries and Chet Hendrickson derive Agile practices from the natural laws of software development. They don&#8217;t just say &#8220;Be Agile!&#8221;, but they explain why Agile practices make perfect sense in the software development world.
Bio
Ron Jeffries, an independent consultant in XP and Agile methods, was the on-site coach [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://flv.thruhere.net/presentations/08-aug-jeffries-natural-laws.flv"><img src="http://www.infoq.com/resource/presentations/Natural-Laws-Jeffries-Hendrickson/en/smallimage/jeffries.jpg" alt="Natural Laws of Software Development - Deriving Agile Practices" /></a></p>
<p><strong>Summary</strong><br />
In this presentation filmed during Agile 2008, Ron Jeffries and Chet Hendrickson derive Agile practices from the natural laws of software development. They don&#8217;t just say &#8220;Be Agile!&#8221;, but they explain why Agile practices make perfect sense in the software development world.</p>
<p><strong>Bio</strong><br />
Ron Jeffries, an independent consultant in XP and Agile methods, was the on-site coach for the original XP project, authored Extreme Programming Adventures in C# and other books. Chet Hendrickson is an independent Agile/XP consultant. He wrote Extreme Programming Installed.</p>
<p><strong>About the conference</strong><br />
Agile 2008 is an exciting international industry conference that presents the latest techniques, technologies, attitudes and first-hand experience, from both a management and development perspective, for successful Agile software development.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/29/9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ut malesuada</title>
		<link>http://wordpress.funnelink.com/2008/08/04/ut-malesuada/</link>
		<comments>http://wordpress.funnelink.com/2008/08/04/ut-malesuada/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 16:00:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=6</guid>
		<description><![CDATA[Proin non erat. Quisque nec dui nec ipsum vulputate elementum. Maecenas pharetra. Etiam lacinia dolor sodales turpis. Curabitur enim erat, varius tincidunt, dapibus sed, aliquet sit amet, massa. Nulla faucibus pede at ipsum. Ut malesuada, augue vel interdum cursus, odio turpis accumsan nulla, eget mattis nibh lacus quis orci. Phasellus aliquam, nisi vel porttitor egestas, [...]]]></description>
			<content:encoded><![CDATA[<p>Proin non erat. Quisque nec dui nec ipsum vulputate elementum. Maecenas pharetra. Etiam lacinia dolor sodales turpis. Curabitur enim erat, varius tincidunt, dapibus sed, aliquet sit amet, massa. Nulla faucibus pede at ipsum. Ut malesuada, augue vel interdum cursus, odio turpis accumsan nulla, eget mattis nibh lacus quis orci. Phasellus aliquam, nisi vel porttitor egestas, augue dui interdum nulla, ut lacinia quam lectus a tellus. Sed dolor ante, fermentum quis, accumsan quis, sodales ac, ipsum. Duis malesuada. Praesent vitae neque. Nulla facilisi.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/04/ut-malesuada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://wordpress.funnelink.com/2008/08/04/hello-world/</link>
		<comments>http://wordpress.funnelink.com/2008/08/04/hello-world/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 15:58:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wordpress.funnelink.com/?p=1</guid>
		<description><![CDATA[Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!
]]></description>
			<content:encoded><![CDATA[<p>Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.funnelink.com/2008/08/04/hello-world/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
