<?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>Matt Walker&#039;s Tech and Hobby Blog &#187; hosting</title>
	<atom:link href="http://mrmatt57.org/tag/hosting/feed/" rel="self" type="application/rss+xml" />
	<link>http://mrmatt57.org</link>
	<description></description>
	<lastBuildDate>Tue, 27 Jul 2010 00:51:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Amazon Cloudfront » Shopping for a CDN?</title>
		<link>http://mrmatt57.org/amazon-cloudfront-%c2%bb-shopping-for-a-cdn/</link>
		<comments>http://mrmatt57.org/amazon-cloudfront-%c2%bb-shopping-for-a-cdn/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 01:06:54 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[content delivery network]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://mrmatt57.org/?p=71</guid>
		<description><![CDATA[This past month Amazon sent me an early Christmas present, their very own content deliver network (CDN).  Adding to their already robust line of "cloud" offerings, Amazon Cloudfront brings edge server routing to the mix.]]></description>
			<content:encoded><![CDATA[<p><img src="http://static.mrmatt57.org/img/amazoncloudfront.jpg" alt="Cloudfront Amazon Data Centers" height="200" width="510" /><span id="credits"><br />
Location of Amazon Data Centers World-wide. Credit <a href="http://www.allthingsdistributed.com/2008/11/amazon_cloudfront.html" target="_blank">Werner Vogels</a></span></p>
<p>This past month Amazon sent me an early Christmas present, their very own content deliver network (CDN).  Adding to their already robust line of &#8220;cloud&#8221; offerings, Amazon Cloudfront brings edge server routing to the mix.  I have been using Amazon S3 for static content delivery since my most recent <a href="http://mrmatt57.org/2008/01/16/hello-world-new-server-theme-content-collaboration/">hello world</a>.  Cloudfront takes the highly scalable and redundant S3 and puts it closer to the end user, thus distributing throughput and reducing latency.</p>
<p>When it comes to web development, one of my driving forces is performance.  I love seeking out and shaving milliseconds off page loads and network requests.  One of the best ways to do this is to put the content as close to the source as possible.  Content Delivery Networks do just that.  If my viewers are in Asia, I don&#8217;t want my server in New York and vise versa.  With a CDN data is cached at several geographically optimized locations as needed.  When a request comes in, it is routed to the nearest location.</p>
<h3>The quickest route to the Jungle</h3>
<p>A good tool to analyze network routing, latency and a bunch of other stuff is <a href="http://www.pingplotter.com/" target="_blank">pingplotter</a>.  They have a free version and pro version.  The free version works great for my purposes.  Internet Control Message Protocol (ICMP) Pings are a lightweight and predictable way to provide insight on latency and network conditions.  Here is a comparison of my routes between Amazon Cloudfront and my standard web server.</p>
<p>

			    <a href="http://static.mrmatt57.org/img/pingplotter.jpg" class="highslide"  onclick="return hs.expand(this, {captionId: 'caption-for-P710'})"> 
                <img src="http://static.mrmatt57.org/img/pingplotter_thumb.jpg" alt="Amazon Cloudfront Pingplotter" border="0" id="P710" title="Amazon Cloudfront Pingplotter" /></a> 
				

</p>
<p>As you can see, with Cloudfront I scream right to Amazons Newark, NJ server as apposed to going through McClean, VA, then ATL, and finally to my server in Dallas, TX.</p>
<h3>How Cloudfront performs in the CDN storm</h3>
<p>Pingplotter works great to determine *your* route and latency.  </p>
<p><a href="http://just-ping.com/">Just-ping.com</a> provides a great way to test your host/cdn from many geographic locations at once.</p>
<p><i>Disclaimer: The below analysis was put together to illustrate a general concept.  Accuracy and real world conditions will vary.</i>
<link rel=stylesheet href="//spreadsheets.google.com/client/css/1899949536-trix_main.css" type="text/css">
<style>.tblGenFixed td {padding:0 3px;overflow:hidden;white-space:normal;letter-spacing:0;word-spacing:0;background-color:#fff;z-index:1;border-top:0px none;border-left:0px none;border-bottom:1px solid #CCC;border-right:1px solid #CCC;} .dn {display:none} .tblGenFixed td.s0 {background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#000000;text-decoration:none;text-align:left;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid black;border-bottom:1px solid black;border-left:1px solid black;} .tblGenFixed td.s2 {background-color:#99cc00;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#808080;text-decoration:none;text-align:center;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid black;border-bottom:1px solid black;} .tblGenFixed td.s1 {background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#808080;text-decoration:none;text-align:center;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid black;border-bottom:1px solid black;} .tblGenFixed td.s5 {background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:bold;font-style:normal;color:#000000;text-decoration:none;text-align:center;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid #CCC;border-bottom:1px solid #CCC;} .tblGenFixed td.s3 {background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;text-decoration:none;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid #CCC;border-bottom:1px solid #CCC;} .tblGenFixed td.s4 {background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:bold;font-style:normal;color:#000000;text-decoration:none;text-align:left;vertical-align:bottom;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-right:1px solid #CCC;border-bottom:1px solid #CCC;border-left:1px solid #CCC;} </style>
</link><body style='border:0px;margin:0px'><br />
<table cellpadding='0' class='tblGenFixed colHead_0'>
<tr>
<td class='rShim' style='width:0;'></td>
<td class='rShim' style='width:184px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim hdn' style='display:none;width:120px;'>
<tr isFrozenRow=true>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td style='background-color:#000000;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#ffffff;text-decoration:none;text-align:left;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;border-left:1px solid black;;'>Geographic Location</td>
<td style='background-color:#000000;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#ffffff;text-decoration:none;text-align:center;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;;'>Single Web Server</td>
<td style='background-color:#000000;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#ffffff;text-decoration:none;text-align:center;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;;'>Amazon Cloudfront</td>
<td style='background-color:#000000;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#ffffff;text-decoration:none;text-align:center;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;;'>Akamai</td>
<td style='background-color:#000000;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;color:#ffffff;text-decoration:none;text-align:center;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;;'>LimeLight</td>
<td class='dn' style='background-color:white;font-family:arial,sans,sans-serif;font-size:100.0%;font-weight:normal;font-style:normal;text-decoration:none;vertical-align:middle;white-space:normal;overflow:hidden;text-indent:0px;padding-left:3px;border-top:1px solid #CCC;border-right:1px solid #CCC;border-bottom:1px solid #CCC;;'></td>
<td class='headerEnd'>
<tr id='sortBar_0'>
<td class='sortBar' />
<td class='sortBar' />
<td class='sortBar' />
<td class='sortBar' />
<td class='sortBar' />
<td class='sortBar' />
<td class='sortBar' style='display:none;' />
<td class='headerEnd' /></tr>
</td>
</tr>
</td>
</tr>
</table>
<table border=0 cellpadding=0 cellspacing=0 id='tblMain'>
<tr>
<td>
<table border=0 cellpadding=0 cellspacing=0 class='tblGenFixed' id='tblMain_0'>
<tr>
<td class='rShim' style='width:0;'></td>
<td class='rShim' style='width:184px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim hdn' style='display:none;width:120px;'>
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Florida, U.S.A.</td>
<td class='s1 ' >34.4</td>
<td class='s2 ' >29.4</td>
<td class='s1 ' >36.5</td>
<td class='s1 ' >36.9</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Chicago, U.S.A.</td>
<td class='s1 ' >34.5</td>
<td class='s1 ' >6.6</td>
<td class='s1 ' >19</td>
<td class='s2 ' >1.3</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > San Francisco, U.S.A.</td>
<td class='s1 ' >43.6</td>
<td class='s1 ' >2.2</td>
<td class='s1 ' >3.6</td>
<td class='s2 ' >2</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > New York, U.S.A.</td>
<td class='s1 ' >43.9</td>
<td class='s2 ' >5</td>
<td class='s1 ' >8.9</td>
<td class='s1 ' >6.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Santa Clara, U.S.A.</td>
<td class='s1 ' >47.1</td>
<td class='s1 ' >3.9</td>
<td class='s2 ' >2.8</td>
<td class='s1 ' >6.9</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Vancouver, Canada</td>
<td class='s1 ' >73</td>
<td class='s1 ' >52</td>
<td class='s2 ' >4.5</td>
<td class='s1 ' >95.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Austin1, U.S.A.</td>
<td class='s1 ' >102.4</td>
<td class='s1 ' >38.1</td>
<td class='s2 ' >5.2</td>
<td class='s1 ' >76.3</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Austin, U.S.A.</td>
<td class='s1 ' >102.7</td>
<td class='s1 ' >38.1</td>
<td class='s2 ' >5.3</td>
<td class='s1 ' >76.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > London, United Kingdom</td>
<td class='s1 ' >108</td>
<td class='s1 ' >13.2</td>
<td class='s1 ' >1.8</td>
<td class='s2 ' >1.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Amsterdam3, Netherlands</td>
<td class='s1 ' >114.3</td>
<td class='s1 ' >19.9</td>
<td class='s2 ' >0.7</td>
<td class='s1 ' >7.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Amsterdam2, Netherlands</td>
<td class='s1 ' >115.8</td>
<td class='s1 ' >20.6</td>
<td class='s2 ' >1.5</td>
<td class='s1 ' >8.1</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Amsterdam, Netherlands</td>
<td class='s1 ' >118.6</td>
<td class='s1 ' >0.9</td>
<td class='s2 ' >0.5</td>
<td class='s1 ' >0.7</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Lille, France</td>
<td class='s1 ' >120.3</td>
<td class='s2 ' >12.9</td>
<td class='s1 ' >14.2</td>
<td class='s1 ' >110.9</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Munchen, Germany</td>
<td class='s1 ' >129.1</td>
<td class='s2 ' >7.6</td>
<td class='s1 ' >10.2</td>
<td class='s1 ' >7.7</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Zurich, Switzerland</td>
<td class='s1 ' >130.8</td>
<td class='s1 ' >10.6</td>
<td class='s2 ' >2.8</td>
<td class='s1 ' >25.7</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Cologne, Germany</td>
<td class='s1 ' >131.8</td>
<td class='s1 ' >9</td>
<td class='s2 ' >5</td>
<td class='s1 ' >20.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Groningen, Netherlands</td>
<td class='s1 ' >133</td>
<td class='s2 ' >4.3</td>
<td class='s1 ' >5.7</td>
<td class='s2 ' >4.3</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Copenhagen, Denmark</td>
<td class='s1 ' >137.9</td>
<td class='s1 ' >15.6</td>
<td class='s2 ' >4.1</td>
<td class='s1 ' >25.3</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Antwerp, Belgium</td>
<td class='s1 ' >139.7</td>
<td class='s1 ' >5.5</td>
<td class='s2 ' >4.2</td>
<td class='s1 ' >4.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Stockholm, Sweden</td>
<td class='s1 ' >142</td>
<td class='s1 ' >32.7</td>
<td class='s2 ' >5</td>
<td class='s1 ' >23.6</td>
<td class='s3 dn' ></td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</table>
<tr>
<td>
<table border=0 cellpadding=0 cellspacing=0 class='tblGenFixed' id='tblMain_1'>
<tr>
<td class='rShim' style='width:0;'></td>
<td class='rShim' style='width:184px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim' style='width:81px;'></td>
<td class='rShim hdn' style='display:none;width:120px;'>
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Madrid, Spain</td>
<td class='s1 ' >142.4</td>
<td class='s1 ' >45.2</td>
<td class='s2 ' >2.5</td>
<td class='s1 ' >25.1</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Paris, France</td>
<td class='s1 ' >149.9</td>
<td class='s1 ' >8.3</td>
<td class='s1 ' >17.5</td>
<td class='s2 ' >1.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Cagliari, Italy</td>
<td class='s1 ' >165.5</td>
<td class='s1 ' >30.1</td>
<td class='s2 ' >29.5</td>
<td class='s1 ' >30.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Auckland, New Zealand</td>
<td class='s1 ' >173.7</td>
<td class='s1 ' >159.8</td>
<td class='s2 ' >1.1</td>
<td class='s1 ' >161.4</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Krakow, Poland</td>
<td class='s1 ' >174.1</td>
<td class='s1 ' >31</td>
<td class='s2 ' >8.8</td>
<td class='s1 ' >43.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Haifa, Israel</td>
<td class='s1 ' >177.9</td>
<td class='s1 ' >78.1</td>
<td class='s2 ' >0.5</td>
<td class='s1 ' >64.5</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Porto Alegre, Brazil</td>
<td class='s1 ' >179.1</td>
<td class='s1 ' >149.9</td>
<td class='s2 ' >30.2</td>
<td class='s1 ' >169.9</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Nagano, Japan</td>
<td class='s1 ' >185.8</td>
<td class='s1 ' >4.8</td>
<td class='s1 ' >13.1</td>
<td class='s2 ' >4.7</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Sydney, Australia</td>
<td class='s1 ' >204.8</td>
<td class='s1 ' >159.2</td>
<td class='s2 ' >3.3</td>
<td class='s1 ' >166.2</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Hong Kong, China</td>
<td class='s1 ' >206.8</td>
<td class='s1 ' >2.3</td>
<td class='s2 ' >2.2</td>
<td class='s1 ' >65.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Melbourne, Australia</td>
<td class='s1 ' >207.6</td>
<td class='s1 ' >177.9</td>
<td class='s2 ' >1.7</td>
<td class='s1 ' >166.6</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Singapore, Singapore</td>
<td class='s1 ' >238.7</td>
<td class='s1 ' >137.1</td>
<td class='s1 ' >13.3</td>
<td class='s2 ' >3.5</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Shanghai, China</td>
<td class='s1 ' >249.1</td>
<td class='s1 ' >153.5</td>
<td class='s1 ' >308.3</td>
<td class='s2 ' >87</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Mumbai, India</td>
<td class='s1 ' >280.3</td>
<td class='s1 ' >259.1</td>
<td class='s2 ' >1.6</td>
<td class='s1 ' >263.5</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s0 ' > Johannesburg, South Africa</td>
<td class='s1 ' >304.8</td>
<td class='s1 ' >293.2</td>
<td class='s2 ' >19.3</td>
<td class='s1 ' >274.7</td>
<td class='s3 dn' >
<tr>
<td class=hd>
<p style='height:16px;'>.</p>
</td>
<td class='s4 ' >Average (miliseconds)</td>
<td class='s5 ' >144.1</td>
<td class='s5 ' >57.65</td>
<td class='s5 ' >16.98</td>
<td class='s5 ' >59.15</td>
<td class='dn' ></td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</td>
</tr>
</table>
</td>
</tr>
</td>
</tr>
</table>
<p>

			    <a href="http://static.mrmatt57.org/img/AmazonCloudfront.png" class="highslide"  onclick="return hs.expand(this, {captionId: 'caption-for-P711'})"> 
                <img src="http://static.mrmatt57.org/img/AmazonCloudfront_thumb.png" alt="Amazon Cloudfront" border="0" id="P711" title="Amazon Cloudfront" /></a> 
				

</p>
<h3>Setting up and configuring Amazon Cloudfront</h3>
<p>Setup was <a href="http://www.labnol.org/internet/setup-content-delivery-network-with-amazon-s3-cloudfront/5446/">super easy</a> with the latest S3 Organizer Firefox Add-on.  You can also complete the setup with a <a href="http://docs.amazonwebservices.com/AmazonCloudFront/latest/GettingStartedGuide/index.html?ToolsYouNeed.html">Curl Script</a>.</p>
<p></body></p>
<img src="http://mrmatt57.org/?ak_action=api_record_view&id=71&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://mrmatt57.org/amazon-cloudfront-%c2%bb-shopping-for-a-cdn/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Webmasters: Don&#8217;t forget about DNS&#8230;</title>
		<link>http://mrmatt57.org/webmasters-dont-forget-about-dns/</link>
		<comments>http://mrmatt57.org/webmasters-dont-forget-about-dns/#comments</comments>
		<pubDate>Wed, 30 Jan 2008 05:12:49 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Editorials]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[anycast]]></category>
		<category><![CDATA[BIND]]></category>
		<category><![CDATA[DDOS]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[outsource]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[TTL]]></category>

		<guid isPermaLink="false">http://mrmatt57.org/2008/01/30/webmasters-dont-forget-about-dns/</guid>
		<description><![CDATA[The Domain Name System (DNS) is arguably the single most important part of the internet.  Just think: If websites only had a numerical lookup... our Rolodex's would be massively confusing. ]]></description>
			<content:encoded><![CDATA[<p><img src="http://static.mrmatt57.org/img/dns_error.jpg" alt="DNS Error" /></p>
<p><em><quote>&#8220;A study conducted by IDC determined that only 41% of small companies and 35% of large organizations monitor Internet DNS response times.&#8221;</p>
<p>&#8220;DNS failures account for as much as 29% of system downtime costing companies millions of dollars.&#8221;</quote></em></p>
<p>The Domain Name System (DNS) is arguably the single most important part of the internet.  Just think: If websites only had a numerical lookup&#8230; our Rolodex&#8217;s would be massively confusing.  Why don&#8217;t webmasters/hosts treat DNS with the same priority?  DNS servers carry such a high importance.  Without them, no internet.  They are often the <a href="http://en.wikipedia.org/wiki/DNS_Backbone_DDoS_Attacks" target="_blank">target</a> of massive Distributed Denial of Service (DDOS) attacks.  Are your DNS records configured properly and  secure?</p>
<p><strong>DNS Performance &#038; Security Enhancements</strong></p>
<p>Most of the Internet is run on Berkeley Internet Name Domain (BIND) based servers.  There have been a lot of failed attempts to create a BIND alternative (GnuDIP, MooDNS, Dents, OakDNS, CustomDNS and dproxy).  A couple of active projects are PowerDNS, NSD, djdns and MaraDNS.  All boast better security and performance improvements in different environments.  If you are hosting your own DNS, you owe it to yourself/network to <a href="http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software" target="_blank">review your options</a>.</p>
<div style="float: right;"><img src="http://static.mrmatt57.org/img/ip_anycast.gif" alt="Anycast" /></div>
<p>Another performance and security innovation that is becoming increasing popular across many stateless services on the internet is IP <a href="http://en.wikipedia.org/wiki/Anycast" target="_blank">anycast networks</a>.  It is a network addressing and routing scheme where data is routed to the nearest or best destination.  It helps provide higher availability and load balancing.  Many of the TLD servers name servers are already running on anycast networks.  In fact these servers survived the massive <a href="http://blog.icann.org/?p=37" target="_blank">DDOS attack last year</a>.  UtraDNS, Netriplex and DNS Made Easy are among the few providers to deliver DNS over an anycast network.  I imagine many more fill follow suit. </p>
<p><strong>Minimizing down-time with TTL</strong></p>
<p>Most of us have been effected by DNS outages.  There is not much you can do when a record gets out of whack or a server goes down.  You can flush your local cache, maybe even try to resolve against a different server, but the only real cure is time.  That is because each DNS record has a setting called Time to Live (TTL).  This is how long the record should persist.   Once this time expires, a new record is fetched.  Also, if the servers aren&#8217;t available, you don&#8217;t get a record.</p>
<p>A good rule of thumb when setting your TTL is to use your average visitor time.  For example, if the average visitor spends five minutes on your site (check your analytics), you should set your TTL to 300 (in seconds).  The idea is; in the event of a failover,  it has the least impact on visitors and doesn&#8217;t require a performance hit for numerous DNS lookups.  Some DNS providers won&#8217;t allow a TTL setting this low.  A lower TTL mean more DNS queries and ultimately more expense. </p>
<p><strong>Should I outsource my DNS?</strong></p>
<p>A lot of network architects will actually advise webmasters to host their own DNS records.  The route/latency will be the same as HTTP traffic, thus making lookup time approximately the same as a web requests.  It also reduces the risk of outages caused solely by DNS.  If they are hosted on the same subnet, routing glitches are minimized.  If they are on the same server as your website, it will even further reduce the risk of DNS only outages.</p>
<p>However, if you don&#8217;t have the time/experience to monitor, review logs and maintain your DNS servers, outsourcing  is a great option.  But beware, all DNS networks/servers are not created equally.  If you are hosting your records with a budget registrar, chances are you are at risk.  They are often the target of DDOS attacks, endure lengthy outages/maintenance and have congested networks.    Security by obscurity; in the last two years I have had clients with DNS outages lasting greater than 6 hours at two of the major registrars.</p>
<p>The Cadillac of DNS currently is <a href="http://www.neustarultraservices.biz/">NeuStar&#8217;s UltraDNS</a>.  They have a globally redundant/optimized network with proprietary DNS software powered by Oracle replication.  However, they charge by the query, so if you have a busy site, it will get expensive in a hurry.  Another high-end service is <a href="http://www.netriplex.com/solutions/critical_dns/">Netriplex</a>.  For small to mid size company&#8217;s the only way to afford either of these services is to increase unfortunately to your TTL.</p>
<div style="float: right;"><a href="http://www.dnsmadeeasy.com/u/39743"><img src="http://static.mrmatt57.org/img/dns-made-easy-icon.gif" alt="DNS Made Easy" /></a></div>
<p>The best budget priced service with high-end features/support I have found so far is <a href="http://www.dnsmadeeasy.com/u/39743">DNS Made Easy</a>.  They have a great feature-set, excellent and knowledgeable staff all at a great price.</p>
<p><strong>Search Engine Optimization (SEO)</strong></p>
<p>There have been <a href="http://www.askdavetaylor.com/can_dns_changes_affect_search_engine_results_placement_serp.html" target="_blank">reports</a> of falling Search Engine Results Placements (SERPs) taking drastic drops soon after a DNS change.  Changing just the IP address has not caused any notable problems.  It is domain contact and name server changes that have have caused the speculation.  Many claim it resets the sites Google &#8220;trust points&#8221;.  There are many influences on SERPs and SEO is always a moving target, so take this warning with a grain for salt.  But I thought it was worth mentioning.</p>
<p><strong>For More Information</strong></p>
<p>DNS Wiki &#8211; <a href="http://en.wikipedia.org/wiki/Domain_name_system" target="_blank">http://en.wikipedia.org/wiki/Domain_name_system</a><br />
DNS Forum &#8211; <a href="http://member.dnsstuff.com/forums/" target="_blank">http://member.dnsstuff.com/forums/</a><br />
Web-based DNS Tools &#8211; <a href="http://www.dnstools.com/" target="_blank">http://www.dnstools.com/</a><br />
DNS Surveys &#8211; <a href="http://www.seoconsultants.com/tools/dns/surveys/">http://www.seoconsultants.com/tools/dns/surveys/</a></p>
<img src="http://mrmatt57.org/?ak_action=api_record_view&id=46&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://mrmatt57.org/webmasters-dont-forget-about-dns/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
