<?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>Vasanth&#039;s Blog</title>
	<atom:link href="http://vasanth83.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://vasanth83.wordpress.com</link>
	<description>Try not to become a man of success but rather try to become a man of value.</description>
	<lastBuildDate>Tue, 27 Jul 2010 08:52:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='vasanth83.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Vasanth&#039;s Blog</title>
		<link>http://vasanth83.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://vasanth83.wordpress.com/osd.xml" title="Vasanth&#039;s Blog" />
	<atom:link rel='hub' href='http://vasanth83.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Understanding the Flex 3 Component</title>
		<link>http://vasanth83.wordpress.com/2010/07/27/understanding-the-flex-3-component/</link>
		<comments>http://vasanth83.wordpress.com/2010/07/27/understanding-the-flex-3-component/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 08:52:55 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=57</guid>
		<description><![CDATA[understanding_the_flex_3_lifecycle_v1.0<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=57&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://vasanth83.files.wordpress.com/2010/07/understanding_the_flex_3_lifecycle_v1-0.pdf">understanding_the_flex_3_lifecycle_v1.0</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/57/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/57/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/57/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=57&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2010/07/27/understanding-the-flex-3-component/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
		<item>
		<title>Flex Vs Ajax</title>
		<link>http://vasanth83.wordpress.com/2010/05/26/flex-vs-ajax/</link>
		<comments>http://vasanth83.wordpress.com/2010/05/26/flex-vs-ajax/#comments</comments>
		<pubDate>Wed, 26 May 2010 13:38:29 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=46</guid>
		<description><![CDATA[Both flex and ajax are the good RIA technology, both the technology is used to  buile based applications.   Action Script and MXML are two languages are used in Flex, JavaScript, html and XML is used in  AJAX (asynchronous Java Script and XML) .  There are major difference between both language are mention in the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=46&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Both flex and ajax are the good RIA technology, both the technology is used to  buile based applications.   Action Script and MXML are two languages are used in Flex, JavaScript, html and XML is used in  AJAX (asynchronous Java Script and XML) .  There are major difference between both language are mention in the following doc. Comparatively Flex is the most flexible tool to build RIA application.  Depends on the requirement the technology selection will be made. example:  animation,  Bitmap manipulation are easily done with Flex because flex provides native support to  animate your image as well as  Bitmap manipulation, like resizing, creating blur images etc.,  but in ajax there is no native support, you have to add plug-ins.</p>
<p><a title="Flex Vs Ajax" href="http://vasanth83.files.wordpress.com/2010/05/flexandajax.pdf" target="_blank">for more information flex Vs ajax</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/46/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=46&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2010/05/26/flex-vs-ajax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
		<item>
		<title>Comparison Between LiveCycle Data Services ES2 BlazeDS</title>
		<link>http://vasanth83.wordpress.com/2010/05/26/comparison-between-livecycle-data-services-es2-blazeds/</link>
		<comments>http://vasanth83.wordpress.com/2010/05/26/comparison-between-livecycle-data-services-es2-blazeds/#comments</comments>
		<pubDate>Wed, 26 May 2010 10:03:25 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=41</guid>
		<description><![CDATA[LiveCycle Data Services ES2  Vs BlazeDS Related Article http://www.infoq.com/articles/Blaze-LiveCycle<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=41&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a title="BlazeDS Vs LiveCycle Data Services ES2" href="http://www.adobe.com/products/livecycle/dataservices/compare.html" target="_blank">LiveCycle Data Services ES2  Vs BlazeDS</a></p>
<p>Related Article</p>
<p><a title="Blaze Data Services or LiveCycle Data Services?" href="http://www.infoq.com/articles/Blaze-LiveCycle" target="_blank">http://www.infoq.com/articles/Blaze-LiveCycle</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=41&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2010/05/26/comparison-between-livecycle-data-services-es2-blazeds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
		<item>
		<title>Tiers in J2EE</title>
		<link>http://vasanth83.wordpress.com/2010/01/05/tiers-in-j2ee/</link>
		<comments>http://vasanth83.wordpress.com/2010/01/05/tiers-in-j2ee/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 10:57:02 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=37</guid>
		<description><![CDATA[When ever we talk about tiers, the first Question arrives in our mind is what is Tier?. Tier refers to the “Possibility of having different Configurations”. Tiers can be divided into 5 categories Client Presentation tier Server side Presentation tier Server side Business Logic tier Server side domain model Enterprise Integration tier Client Presentation tier [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=37&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 8.5in 11in; margin: 0.79in } 		P { margin-bottom: 0.08in } --><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">When ever we talk about tiers, the first Question arrives in our mind is <strong>what is Tier?. </strong>Tier refers to the “Possibility of having different Configurations”. </span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> Tiers can be divided into 5 categories</span></span></p>
<ol>
<li><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">Client 	Presentation tier</span></span></li>
<li><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">Server 	side Presentation tier</span></span></li>
<li><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">Server 	side Business Logic tier</span></span></li>
<li><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">Server 	side domain model</span></span></li>
<li><span style="font-family:Arial,sans-serif;"><span style="font-size:small;">Enterprise 	Integration tier<br />
</span></span></li>
</ol>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><span style="text-decoration:underline;"><strong>Client Presentation tier</strong></span></span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> There are two kind of  Client Presentation tier, one is thick and thin. The application are build either thick/think or both. Actually thick client, which holds the presentation and application login in client side, that is bypassing the Server side Presentation tier and  Server side Business Logic tier. For example application are build by using Swing/AWT.</span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> </span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> The thin client it doesn&#8217;t hold any business Logic and probably the client presentation tier which is interlinked with Business Logic tier. For example HTML/DHTML etc.. javascript or some validation part will be included in the client presentation.</span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><span style="text-decoration:underline;"><strong>Server side Presentation tier</strong></span></span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><strong> </strong>It just purely dynamic client presentation. Depends on the user the client presentation will vary, which is done by server side.</span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><span style="text-decoration:underline;"><strong>Server side Business Logic tier</strong></span></span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> Actually, this tire which encapsulates the entire business logic from the application.</span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><span style="text-decoration:underline;"><strong>Server side domain model</strong></span></span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"> This tier which gives the data to the Business Login tier. The Data Models are retrieved/used by the Business logic tier.</span></span></p>
<p><span style="font-family:Arial,sans-serif;"><span style="font-size:small;"><span style="text-decoration:underline;"><strong>Enterprise Integration tier</strong></span></span></span></p>
<p><span style="font-size:small;"><span style="font-family:Arial,sans-serif;"> This tier is used to integrate our application with External System. For example External System  includes ERP, MainFrame, email, etc.,. The connection are established via CORBA,  services,  Message orientated middleware etc.,</span> <span style="font-family:Arial,sans-serif;"> </span></span></p>
<p><!-- 		@page { size: 8.5in 11in; margin: 0.79in } 		P { margin-bottom: 0.08in } --></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=37&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2010/01/05/tiers-in-j2ee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
		<item>
		<title>Object Pooling</title>
		<link>http://vasanth83.wordpress.com/2009/08/21/object-pooling/</link>
		<comments>http://vasanth83.wordpress.com/2009/08/21/object-pooling/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 04:32:50 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=10</guid>
		<description><![CDATA[Object pooling is an design pattern, actually object pool is set of initialized objects kept it ready for further use in our application. This pattern is used to increase our application performance. Creating &#38; Destroying (costly) object will decrease application performance. In order to destroy objects we can keep those objects in this our memory [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=10&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 8.5in 11in; margin: 0.79in } 		P { margin-bottom: 0.08in } --></p>
<p style="margin-bottom:0;" align="justify"><span style="font-family:Arial,sans-serif;">Object pooling is an design pattern, actually object pool is set of initialized objects kept it ready for further use in our application. This pattern is used to increase our application performance. Creating &amp; Destroying (<strong>costly</strong>) object will decrease application performance. In order to  destroy objects we can keep those objects in this our memory pool for later use for example the client will request the object from pool, if it is available it will retrieved from pool and processed it. once the client finished with object, the object will be stored in the pool memory rather than destroying. This pattern will be used in client side(Common ArrayCollection, images, videos,etc,..) as well as server side(Database connection, costly lookups, socket connection etc,..). </span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=10&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2009/08/21/object-pooling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
		<item>
		<title>What is Optimistic Locking vs. Pessimistic Locking</title>
		<link>http://vasanth83.wordpress.com/2009/08/06/what-is-optimistic-locking-vs-pessimistic-locking/</link>
		<comments>http://vasanth83.wordpress.com/2009/08/06/what-is-optimistic-locking-vs-pessimistic-locking/#comments</comments>
		<pubDate>Thu, 06 Aug 2009 06:05:37 +0000</pubDate>
		<dc:creator>vasanth</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://vasanth83.wordpress.com/?p=5</guid>
		<description><![CDATA[These are methodologies used to handle multi-user issues. How does one handle the fact that 2 people want to update the same record at the same time? 1. Do Nothing - User 1 reads a record - User 2 reads the same record - User 1 updates that record - User 2 updates the same [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=5&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>These are methodologies used to handle multi-user issues. How does one handle the fact that 2 people want to update the same record at the same time?</p>
<p>1. Do Nothing<br />
<strong>- User 1 reads a record<br />
- User 2 reads the same record<br />
- User 1 updates that record<br />
- User 2 updates the same record</strong><br />
User 2 has now over-written the changes that User 1 made. They are completely gone, as if they never happened. This is called a &#8216;lost update&#8217;.</p>
<p>2. Lock the record when it is read. Pessimistic locking<br />
-<strong> User 1 reads a record *and locks it* by putting an exclusive lock on the record (FOR UPDATE clause)<br />
- User 2 attempts to read *and lock* the same record, but must now wait behind User 1</strong><br />
<strong>- User 1 updates the record (and, of course, commits)<br />
- User 2 can now read the record *with the changes that User 1 made*<br />
- User 2 updates the record complete with the changes from User 1</strong><br />
The lost update problem is solved. The problem with this approach is concurrency. User 1 is locking a record that they might not ever update. User 2 cannot even read the record because they want an exclusive lock when reading as well. This approach requires far too much exclusive locking, and the locks live far too long (often across user control &#8211; an *absolute* no-no). This approach is almost *never* implemented.</p>
<p>3. Use Optimistic Locking. Optimistic locking does not use exclusive locks when reading. Instead, a check is made during the update to make sure that the record has not been changed since it was read. This can be done by checking every field in the table.<br />
ie. UPDATE Table1 SET Col2 = x WHERE COL1=:OldCol1 AND COl2=:OldCol AND Col3=:OldCol3 AND&#8230;<br />
There are, of course, several disadvantages to this. First, you must have already SELECTed every single column from the table. Secondly, you must build and execute this massive statement. *Most* people implement this, instead, through a single column, usually called timestamp. This column is used *for no other purpose* than implementing optimistic concurrency. It can be a number or a date. The idea is that it is given a value when the row is inserted. Whenever the record is read, the timestamp column is read as well. When an update is performed, the timestamp column is checked. If it has the same value at UPDATE time as it did when it was read, then all is well, the UPDATE is performed and *the timestamp is changed!*. If the timestamp value is different at UPDATE time, then an error is returned to the user &#8211; they must re-read the record, re-make their changes, and try to update the record again.</p>
<p><strong>- User 1 reads the record, including the timestamp of 21<br />
- User 2 reads the record, including the timestamp of 21<br />
- User 1 attempts to update the record. The timestamp in had (21) </strong>matches<strong> </strong>the timestamp in the database(21), so the update is performed and the timestamp is update (22).<br />
- User 2 attempts to update the record. The timestamp in hand(21) *does not* match the timestamp in the database(22), so an error is returned. User 2 must now re-read the record, including the new timestamp(22) and User 1&#8242;s changes, re-apply their changes and re-attempt the update.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vasanth83.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vasanth83.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vasanth83.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vasanth83.wordpress.com&amp;blog=8879884&amp;post=5&amp;subd=vasanth83&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://vasanth83.wordpress.com/2009/08/06/what-is-optimistic-locking-vs-pessimistic-locking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/257a69c45c090de1226bc0a53cfebffd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vasanth</media:title>
		</media:content>
	</item>
	</channel>
</rss>
