<?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>Gareth Klose &#187; Uncategorized</title>
	<atom:link href="http://garethklose.com/category/uncategorized/feed" rel="self" type="application/rss+xml" />
	<link>http://garethklose.com</link>
	<description>Gareth Klose writes about technology, television and travelling</description>
	<lastBuildDate>Fri, 03 Feb 2012 00:39:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Performance: still hard</title>
		<link>http://garethklose.com/2011/11/performance-still-hard</link>
		<comments>http://garethklose.com/2011/11/performance-still-hard#comments</comments>
		<pubDate>Thu, 24 Nov 2011 14:25:47 +0000</pubDate>
		<dc:creator>gareth</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[scaling]]></category>

		<guid isPermaLink="false">http://garethklose.com/?p=610</guid>
		<description><![CDATA[Performance is still hard: Artur Bergman of Fastly talks about what you're doing wrong. <a href="http://garethklose.com/2011/11/performance-still-hard">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I watched <a href="http://twitter.com/crucially">@crucially</a>’s video from the velocity conference, where once again it&#8217;s a good talk where he plays <a href="http://www.youtube.com/watch?v=oebqlzblfyo">the Grumpy Bastard</a> with aplomb. Soon, soon I promise, I will &#8220;Buy a Fucking SSD&#8221;.</p>
<p><strong>That&#8217;s Magic!</strong></p>
<p>If you don&#8217;t understand stuff, it&#8217;s magic. And if you&#8217;re relying on something that&#8217;s magic, your platform can disappear in a puff of smoke. This especially true of newer things &#8211; I don&#8217;t understand MySQL but it&#8217;s long in the tooth enough I can (mostly) trust it. Some of the newer NoSQL techs do not have that lineage&#8230;</p>
<p>Open Source allows you to get under the hood of all these things, to look behind the curtain and reverse-engineer what is going on. You invariably have to as the documentation is a TODO item. This means that when you do hit these extreme edge cases situations you can fix them, eventually.</p>
<p>But that&#8217;s only once you&#8217;ve really understood the problem. In black-box situations it&#8217;s all too easy to pull the levers you have until it seems the problem has gone away, but all you&#8217;ve done is masked, displaced, or deferred it. You have to understand the whole stack and not just &#8220;your bit&#8221;. (This reminded me a bit of a conversation with a friend who does network security, where decisions not to collect some data for &#8220;safety&#8221; actually made potential targets more obvious)</p>
<p><strong>There are no gremlins</strong></p>
<p>My favourite point was this: Computers are (mostly) deterministic.</p>
<p>We talk about bugs, issues, intermittent and transient faults &#8211; almost resigning ourselves to sometimes &#8220;things just happen&#8221;.</p>
<p>As Artur points out, computers are deterministic state machines, this randomness doesn&#8217;t really exist. Yes, the complex interplay of our interconnected systems can give the appearance of a random system, but that is just the appearance.</p>
<p>There is pattern in there, and when find it, you can fix it. How? Lots of monitoring, lots of measuring, and good old-fashioned investigation.</p>
<p><strong>Stop throwing boxes &amp; sharding at things</strong></p>
<p>The easy availability of horizontal scale-out makes us lazy and complacent: &#8220;we&#8217;ll just throw another amazon instance at the problem&#8221;. That can be a valid approach, but only when your existing instances are actually spending all of their time doing meaningful work and not stuck queuing on some random service. If you&#8217;re site is sluggish because of poor code, database performance or tuning, you&#8217;re not really solving the problems.</p>
<p>Latency is even more critical(<a href="http://code.google.com/speed/files/delayexp.pdf">Google PDF</a>), and scaling out a broken system may just let more people use it slowly &#8211; not make it faster.</p>
<p><strong>Post-Cloud Call to Arms?</strong></p>
<p>Scaling was hard: ordering servers took ages and it was all confusing. CDNs cost lots of money, were hard to use and only for the big boys.</p>
<p>Then &#8220;The Cloud&#8221; appeared: people like amazon and others made stuff cheaper and faster to get machines from. For a while we could ignore the complexity and just throw money at it.</p>
<p>But latency isn&#8217;t as simple as capacity, and we&#8217;re back to the situation that isn&#8217;t always about throwing more boxes into the battle.</p>
]]></content:encoded>
			<wfw:commentRss>http://garethklose.com/2011/11/performance-still-hard/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>On Thinking Before you post</title>
		<link>http://garethklose.com/2011/01/on-thinking-before-you-post</link>
		<comments>http://garethklose.com/2011/01/on-thinking-before-you-post#comments</comments>
		<pubDate>Fri, 28 Jan 2011 19:41:50 +0000</pubDate>
		<dc:creator>gareth</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://garethklose.com/?p=317</guid>
		<description><![CDATA[Think before post. <a href="http://garethklose.com/2011/01/on-thinking-before-you-post">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Generally a good plan.</p>
]]></content:encoded>
			<wfw:commentRss>http://garethklose.com/2011/01/on-thinking-before-you-post/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using disk: enhanced
Database Caching 2/17 queries in 0.005 seconds using apc
Object Caching 384/415 objects using apc
Content Delivery Network via Amazon Web Services: CloudFront: node1.garethklose.com

Served from: garethklose.com @ 2012-02-05 14:00:43 -->
