<?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>Barry on WordPress &#187; wordpress.com</title>
	<atom:link href="http://barry.wordpress.com/category/wordpresscom/feed/" rel="self" type="application/rss+xml" />
	<link>http://barry.wordpress.com</link>
	<description>Barry on WordPress.com</description>
	<lastBuildDate>Wed, 05 Jun 2013 13:39:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='barry.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/9d76a0bdad6065d9fe3b3f9a3454d05d?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Barry on WordPress &#187; wordpress.com</title>
		<link>http://barry.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://barry.wordpress.com/osd.xml" title="Barry on WordPress" />
	<atom:link rel='hub' href='http://barry.wordpress.com/?pushpress=hub'/>
		<item>
		<title>HyperDB Replication Lag Detection</title>
		<link>http://barry.wordpress.com/2011/07/20/hyperdb-lag-detection/</link>
		<comments>http://barry.wordpress.com/2011/07/20/hyperdb-lag-detection/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 07:09:51 +0000</pubDate>
		<dc:creator>Iliya Polihronov</dc:creator>
				<category><![CDATA[scaling]]></category>
		<category><![CDATA[wordpress.com]]></category>
		<category><![CDATA[hyperdb]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/?p=612</guid>
		<description><![CDATA[Howdy &#8211; Iliya here again. Seems like I am taking over Barry&#8217;s blog. Hopefully this will motivate him to blog more. On WordPress.com we have over 218 million tables and perform tens of thousands queries per second. To scale all of this, we shard our 24 million blogs across more than 550 MySQL servers. This [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=612&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><cite>Howdy &#8211; Iliya here again. Seems like I am taking over Barry&#8217;s blog. Hopefully this will motivate him to blog more.</cite></p>
<p>On WordPress.com we have over 218 million tables and perform tens of thousands queries per second. To scale all of this, we shard our 24 million blogs across more than 550 MySQL servers. This allows us to cope with load bursts and to handle database servers failures.</p>
<p>For those who are unfamiliar, MySQL data replication is asynchronous and works as follows:</p>
<ol>
<li><strong>[Master]</strong> Receives a query that modifies database structure or content (INSERT, UPDATE, ALTER etc.)</li>
<li><strong>[Master]</strong> The query is written to a log file (aka the binlog).</li>
<li><strong>[Master]</strong> The query is executed on the master.</li>
<li><strong>[Slaves]</strong> Create a “Slave I/O” thread that connects to the [Master] and requests all new queries from the mater’s binlog.</li>
<li><strong>[Master]</strong> Creates a “Binlog dump” thread for each connected slave, that reads the requested events from the binlog and sends them to the slave.</li>
<li><strong>[Slaves]</strong> Start a “Slave SQL” thread which reads queries from the log file written by the “Slave I/O” thread and executes them</li>
</ol>
<p>There are a number of things to be considered in this scenario, which can lead to a condition known as <em><strong>replication lag </strong></em>where the slaves have older data then the master:</p>
<ul>
<li>Since only one thread on the slave executes write queries, and there are many execution threads on the master, there is no guarantee that the slave will be able to execute queries with the same speed as the master.</li>
<li>Long running SELECTs or explicit locks on the slave, will cause the “Slave SQL” thread to wait, thus slowing it down.</li>
<li>Long running queries on the master would take at least the same amount of time to run on the slave, causing it to fall behind the master</li>
<li>I/O (disk or network) issues can prevent or slow down the slave from reading and replaying the binlog events</li>
</ul>
<p>In order to deal with this, we needed a way to avoid connections to lagged slaves as long as there are slaves that are current. This would allow for the lagged ones to recover faster and avoid returning old data to our users. It also had to be something flexible enough, so we could have different settings for acceptable replication lag per dataset or stop tracking it altogether. Since we use the advanced database class, <a href="http://codex.wordpress.org/HyperDB">HyperDB</a>, for all our database connections, it was the obvious place to integrate this.</p>
<p>We implemented it  in the following steps:</p>
<ul>
<li>If a connection modifies data in a given table, then all subsequent SELECTs on the same connection for that table are sent to the master. Chances are replication won&#8217;t be fast enough to propagate the changes to the slaves on the same page load.  This logic has existed in HyperDB for a while.</li>
<li>Before we make a connection to a slave, we use a callback, to check if we have information for this slave’s lag in the cache and we skip it based on that, unless all slaves in the dataset are considered lagged.  In case replication breaks on all slaves, we would rather return old data then overload the master with read queries and cause an outage.</li>
<li>After a successful connection to a slave, if there was nothing in the cache regarding its lag status and not all slaves are considered lagged, we execute a second callback that checks whether this slave is lagged and updates the cache.</li>
</ul>
<p>A slave is considered lagged when it has a “lag threshold” defined in it’s dataset configuration and the current lag is more than this threshold.</p>
<p>We considered the following options for checking if a slave is lagged.  No MySQL patches are required for any of them:</p>
<ul>
<li>Checking the value of <strong>Seconds_Behind_Master </strong>from the <code>SHOW SLAVE STATUS</code> statement executed on the slave. It shows the difference between the timestamp of the currently executed query and the latest query we have received from the master. Although it is easy to implement and has low overhead, the main problem with using this option is that it is not completely reliable, as it can be tricked by IO latency and/or master connection problems.</li>
<li>Tracking the “File” and “Position” on <code>SHOW MASTER STATUS</code> executed on the master and comparing it to Relay_Master_Log_File and Exec_Master_Log_Pos of <code>SHOW SLAVE STATUS</code> on the slave. This way we can wait until the slave executes the queries from binlog “file” and position “position” before send certain queries to that slave and thus effectively we wait for the data to be replicated to the point where we need it. While very reliable, this option is more complex, has lots of overhead and doesn’t give us clock time value which we can track and set between servers.</li>
<li>Tracking the difference between the current time on the slave and the replication of a timestamp update from the master, which runs every second. This is basically what <a href="//www.maatkit.org/doc/mk-heartbeat.html">mk-heartbeat</a> does. It requires proper time sync between the master and the slave servers but is otherwise very reliable.</li>
</ul>
<p>The third option fit our needs best, however the code is flexible enough to easily support any of these. For caching, we decided to go with memcached, since it works well in our distributed, multi-server, multi-datacenter environment, but other methods (APC cache, shared memory, custom daemon etc.) would work just fine.</p>
<p>HyperDB is free, open-source and easy to integrate in your WordPress installation. You can download it <a href="//wordpress.org/extend/plugins/hyperdb/">here</a>.  We hope you enjoy this new functionality and please let us know if you have any questions in the comments.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/612/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/612/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=612&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2011/07/20/hyperdb-lag-detection/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<georss:point>0.000000 0.000000</georss:point>
		<geo:lat>0.000000</geo:lat>
		<geo:long>0.000000</geo:long>
		<media:content url="http://2.gravatar.com/avatar/b0be4235dbf38547a7c26ef8ec94934b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">vnsavage</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress.com DDoS Details</title>
		<link>http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/</link>
		<comments>http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 17:00:19 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[servers]]></category>
		<category><![CDATA[technical]]></category>
		<category><![CDATA[wordpress.com]]></category>
		<category><![CDATA[ddos]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/?p=468</guid>
		<description><![CDATA[As you may have heard, on March 3rd and into the 4th, 2011, WordPress.com was targeted by a rather large Distributed Denial of Service Attack. I am part of the systems and infrastructure team at Automattic and it is our team&#8217;s responsibility to a) mitigate the attack, b) communicate status updates and details of the [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=468&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>As you may have <a href="http://www.techmeme.com/110303/p41">heard</a>, on March 3rd and into the 4th, 2011, WordPress.com was targeted by a rather large <a href="http://en.wikipedia.org/wiki/Denial-of-service_attack">Distributed Denial of Service Attack</a>. I am part of the systems and infrastructure team at Automattic and it is our team&#8217;s responsibility to a) mitigate the attack, b) communicate status updates and details of the attack, and c) figure out how to better protect ourselves in the future.  We are still working on the third part, but I wanted to share some details here.</p>
<p>One of our hosting partners, <a href="http://peer1.com">Peer1</a>, provided us these <a href="http://www.inmon.com/">InMon</a> graphs to help illustrate the timeline. What we saw was not one single attack, but 6 separate attacks beginning at 2:10AM PST on March 3rd. All of these attacks were directed at a single site hosted on WordPress.com&#8217;s servers. The first graph shows the size of the attack in bits per second (bandwidth), and the second graph shows packets per second. The different colors represent source IP ranges.</p>
<p><a rel="attachment wp-att-491" href="http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/ddos-6/"><img class="alignnone size-full wp-image-491" title="DDoS-6" src="http://barry.files.wordpress.com/2011/03/ddos-6.png?w=490" alt=""   /></a></p>
<p><a rel="attachment wp-att-490" href="http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/ddos-5/"><img class="alignnone size-full wp-image-490" title="DDoS-5" src="http://barry.files.wordpress.com/2011/03/ddos-5.png?w=490" alt=""   /></a></p>
<p><a rel="attachment wp-att-490" href="http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/ddos-5/"></a>The first 5 attacks caused minimal disruption to our infrastructure because they were smaller in size and shorter in duration. The largest attack began at 9:20AM PST and was mostly blocked by 10:20AM PST. The attacks were TCP floods directed at port 80 of our load balancers. These types of attacks try to fill the network links and overwhelm network routers, switches, and servers  with &#8220;junk&#8221; packets which prevents legitimate requests from getting through.</p>
<p>The last TCP flood (the largest one on the graph) saturated the links of some of our providers and overwhelmed the core network routers in one of our data centers. In order to block the attack effectively, we had to work directly with our hosting partners and their Tier 1 bandwidth providers to filter the attacks upstream. This process took an hour or two.</p>
<p>Once the last attack was mitigated at around 10:20AM PST, we saw a lull in activity.  On March 4th around 3AM PST, the attackers switched tactics. Rather than a TCP flood, they switched to a HTTP resource consumption attack.  Enlisting a bot-net consisting of thousands of compromised PCs, they made many thousands of simultaneous HTTP requests in an attempt to overwhelm our servers.  The source IPs were completely different than the previous attacks, but mostly still from China.  Fortunately for us, the WordPress.com grid harnesses over 3,600 CPU cores in our web tier alone, so we were able to quickly mitigate this attack and identify the target.</p>
<p>We see denial of service attacks every day on WordPress.com and 99.9% of them have no user impact. This type of attack made it difficult to initially determine the target since the incoming DDoS traffic did not have any identifying information contained in the packets.  WordPress.com hosts over <a href="http://en.wordpress.com/stats/">18 million</a> sites, so finding the needle in the haystack is a challenge. This attack was large, in the 4-6Gbit range, but not the largest we have seen.  For example, in 2008, we <a href="http://www.infoworld.com/d/security-central/dos-attack-prevents-access-wordpresscom-blogs-522">experienced</a> a DDoS in the 8Gbit/sec range.</p>
<p>While it is true that some attacks are <a href="http://techcrunch.com/2011/03/04/wordpress/">politically motivated</a>, contrary to our initial suspicions, we have no reason to believe this one was.  We are big proponents of free speech and aim to provide a platform that supports that freedom. We even have <em>dedicated infrastructure</em> for sites under active attack.  Some of these attacks last for months, but this allows us to keep these sites online and not put our other users at risk.</p>
<p>We also don&#8217;t put all of our eggs in one basket.  WordPress.com alone has 24 load balancers in 3 different data centers that serve production traffic. These load balancers are deployed across different network segments and different IP ranges.  As a result, some sites were only affected for a couple minutes (when our provider&#8217;s core network infrastructure failed) throughout the duration of these attacks.  We are working on ways to improve this segmentation even more.</p>
<p>If you have any questions, feel free to leave them in the comments and I will try to answer them.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/468/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=468&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2011/03/07/wordpress-com-ddos-details/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2011/03/ddos-6.png" medium="image">
			<media:title type="html">DDoS-6</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2011/03/ddos-5.png" medium="image">
			<media:title type="html">DDoS-5</media:title>
		</media:content>
	</item>
		<item>
		<title>New Datacenter for WordPress.com</title>
		<link>http://barry.wordpress.com/2009/02/16/new-datacenter-for-wordpresscom/</link>
		<comments>http://barry.wordpress.com/2009/02/16/new-datacenter-for-wordpresscom/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 07:23:37 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[servers]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/?p=260</guid>
		<description><![CDATA[Towards the end of 2008, we brought online a new datacenter to serve the over 5.5 million blogs now hosted on the WordPress.com platform.  Adding the data center in Chicago, IL gives us a total of 3 data centers across the US which serve live content at any given time.  We have decommissioned one of [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=260&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Towards the end of 2008, we brought online a new datacenter to serve the over 5.5 million blogs now hosted on the WordPress.com platform.  Adding the data center in Chicago, IL gives us a total of 3 data centers across the US which serve live content at any given time.  We have decommissioned one of our facilities in the Dallas, TX area.  Our friends at <a href="http://www.layeredtech.com/">Layered Technologies</a> were kind enough to shoot this footage for us (think <a href="http://en.wikipedia.org/wiki/The_Blair_Witch_Project">The Blair Witch Project</a>) and the always awesome <a href="http://michaelpick.wordpress.com">Michael Pick</a> took care of the editing.  Here&#8217;s a peak at what a typical WordPress data center installation looks like&#8230;</p>
<div id="v-Ht3Acnqq-1" class="video-player" style="width:490px;height:392px">
<embed id="v-Ht3Acnqq-1-video" src="http://s0.videopress.com/player.swf?v=1.03&amp;guid=Ht3Acnqq&amp;isDynamicSeeking=true" type="application/x-shockwave-flash" width="490" height="392" title="serverpr0n21" wmode="direct" seamlesstabbing="true" allowfullscreen="true" allowscriptaccess="always" overstretch="true"></embed></div>
<p>For those interested in technical details here is a hardware overview of the installation:</p>
<p>150 HP DL165s dual quad-core AMD 2354 processors 2GB-4GB RAM<br />
50 HP DL365s dual dual-core AMD 2218 processors 4GB-16GB RAM<br />
5 HP DL185s dual quad-core AMD 2354 processors 4GB RAM</p>
<p>And here is a graph of what the current CPU usage looks like across about 700 CPU cores.  As you can see there is plenty of idle CPU for those big <a href="http://barry.wordpress.com/2008/10/27/anatomy-of-a-dos-attack/">spikes</a> or in case one of the other 2 data centers fail and we have to route more traffic to this one.</p>
<p><img class="alignnone size-large wp-image-263" title="cpuusage-chicago" src="http://barry.files.wordpress.com/2009/02/cpuusage-chicago.png?w=450&#038;h=318" alt="cpuusage-chicago" width="450" height="318" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/260/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/260/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=260&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" /><div><a href="http://barry.wordpress.com/2009/02/16/new-datacenter-for-wordpresscom/"><img alt="serverpr0n21" src="http://videos.videopress.com/Ht3Acnqq/serverpr0n21.original.jpg" width="160" height="120" /></a></div>]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2009/02/16/new-datacenter-for-wordpresscom/feed/</wfw:commentRss>
		<slash:comments>34</slash:comments>
	<enclosure url="http://videos.videopress.com/Ht3Acnqq/serverpr0n21.mp4" length="6113280" type="video/mp4" />

		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2009/02/cpuusage-chicago.png?w=450" medium="image">
			<media:title type="html">cpuusage-chicago</media:title>
		</media:content>

		<media:group>
			<media:content url="http://videos.videopress.com/Ht3Acnqq/serverpr0n21.mp4" fileSize="6113280" type="video/mp4" medium="video" bitrate="796" isDefault="true" duration="60" width="400" height="320" />

			<media:content url="http://videos.videopress.com/Ht3Acnqq/serverpr0n21_fmt1.ogv" fileSize="6113280" type="video/ogg" medium="video" bitrate="796" isDefault="false" duration="60" width="400" height="320" />

			<media:rating scheme="urn:mpaa">g</media:rating>
			<media:title type="plain">serverpr0n21</media:title>
			<media:thumbnail url="http://videos.videopress.com/Ht3Acnqq/serverpr0n21.original.jpg" width="256" height="204" />
			<media:player url="http://s0.videopress.com/player.swf?v=1.03&#38;guid=Ht3Acnqq&#38;isDynamicSeeking=true" width="400" height="320" />
		</media:group>
	</item>
		<item>
		<title>Anatomy of a Denial of Service Attack</title>
		<link>http://barry.wordpress.com/2008/10/27/anatomy-of-a-dos-attack/</link>
		<comments>http://barry.wordpress.com/2008/10/27/anatomy-of-a-dos-attack/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 19:56:54 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[wordpress.com]]></category>
		<category><![CDATA[denial of service]]></category>
		<category><![CDATA[DoS]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/?p=208</guid>
		<description><![CDATA[Running one of the largest websites on the internet with about 5 million unique sites hosted exposes you to all sorts of issues.  There are constant events to deal with, some internal, some external.  This morning, one of the more common external events, a Distributed Denial of Service Attack occurred.  We experience these types of [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=208&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Running one of the largest websites on the internet with about 5 million unique sites hosted exposes you to all sorts of issues.  There are constant events to deal with, some internal, some external.  This morning, one of the more common external events, a <a href="http://en.wikipedia.org/wiki/Denial-of-service_attack" target="_blank">Distributed Denial of Service Attack</a> occurred.  We experience these types of attacks rather frequently, but most are easily mitigated and have no user impact.  One this morning, however, was rather large and thus impacted some users.</p>
<p>Here is a timeline and description of this morning&#8217;s events:</p>
<p><em>9:40 AM EST</em> &#8212; Our internal monitoring systems alerted us to unusual activity in one of the four geographically diverse datacenters which serve WordPress.com traffic.  Here is what that anomaly looks like in graphical terms:</p>
<p style="text-align:center;"><a href="http://barry.files.wordpress.com/2008/10/dos-load.png"><img class="size-full wp-image-209 aligncenter" title="dos-load" src="http://barry.files.wordpress.com/2008/10/dos-load.png?w=490" alt=""   /></a></p>
<p><em>10:00 AM EST</em> &#8212; The target of the attack was identified and removed from our network.  The attack, however continued.  This is because the attacker had hijacked tens of thousands of computers (probably by installing a virus which was spread via email) and these computers had no idea the site was no longer there.  A small log sample shows over 8 million requests for this one site from over 10,000 unique IP addresses.</p>
<p><em>10:20 AM EST</em> &#8212; Since we have servers in multiple data centers throughout the United States which serve traffic for WordPress.com all the time, we were able to route all legitimate traffic out of the affected data center, and let the single affected data center deal with the attack.   </p>
<p><em>11:30 AM EST</em> &#8212; The IPs targeted in the attack were null routed at this point which allowed us to bring all datacenters back online to serve normal traffic.</p>
<p>We keep hourly traffic metrics and based on those numbers, it looks like during the attack there was about a 5% decrease in overall pageviews during the 40 minutes before traffic was re-routed.  All things considered, not a bad outcome for an attack this size.  Looking at bandwidth graphs, this attack was in the 500Mbit &#8211; 750Mbit/sec range.  </p>
<p style="text-align:center;"><a href="http://barry.files.wordpress.com/2008/10/dos-bw.png"><img class="size-full wp-image-210 aligncenter" title="dos-bw" src="http://barry.files.wordpress.com/2008/10/dos-bw.png?w=490" alt=""   /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/208/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=208&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2008/10/27/anatomy-of-a-dos-attack/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2008/10/dos-load.png" medium="image">
			<media:title type="html">dos-load</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2008/10/dos-bw.png" medium="image">
			<media:title type="html">dos-bw</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress.com using S3</title>
		<link>http://barry.wordpress.com/2007/10/10/wordpresscom-using-s3/</link>
		<comments>http://barry.wordpress.com/2007/10/10/wordpresscom-using-s3/#comments</comments>
		<pubDate>Wed, 10 Oct 2007 20:26:03 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2007/10/10/wordpresscom-using-s3/</guid>
		<description><![CDATA[Demitrious has a great post explaining how we are using S3, Varnish, and Pound to serve 60 million image requests per day on WordPress.com UPDATE: Almost forgot, but Matt reminded me, he has a really super duper awesome post about WordPress.com and S3 too!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=111&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Demitrious has a <a href="http://blog.apokalyptik.com/2007/10/10/so-you-wanna-see-an-image/">great post</a> explaining how we are using S3, Varnish, and Pound to serve 60 million image requests per day on WordPress.com</p>
<p><strong>UPDATE</strong>: Almost forgot, but <a href="http://barry.wordpress.com/2007/10/10/wordpresscom-using-s3/#comment-7312">Matt reminded me</a>, he has a really <a href="http://photomatt.net/2007/10/09/s3-news/">super duper awesome post</a> about WordPress.com and S3 too!</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/111/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/111/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/111/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=111&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2007/10/10/wordpresscom-using-s3/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>
	</item>
		<item>
		<title>One milllllliion blogs on WordPress.com</title>
		<link>http://barry.wordpress.com/2007/05/24/one-million-blogs/</link>
		<comments>http://barry.wordpress.com/2007/05/24/one-million-blogs/#comments</comments>
		<pubDate>Thu, 24 May 2007 06:46:29 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[milestone]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2007/05/24/one-million-blogs/</guid>
		<description><![CDATA[At 10:56:22PM PDT on 5/23/2007, the 1 millionth active blog was registered on WordPress.com. And the winner is&#8230;.. claudiacanals.wordpress.com Not much there right now, but hopefully there will be soon. Maybe head over and leave a comment on their about page to let them know! Predictions on how long it will take to get to [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=83&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p align="left"><a href="http://wordpress.com/signup/" title="picture-6.png"><img src="http://barry.files.wordpress.com/2007/05/picture-6.png?w=490" alt="picture-6.png" align="left" border="0" /></a>At 10:56:22PM PDT on 5/23/2007, the 1 millionth active blog was registered on WordPress.com.  And the winner is&#8230;..</p>
<p><a href="http://claudiacanals.wordpress.com">claudiacanals.wordpress.com </a></p>
<p>Not much there right now, but hopefully there will be soon.  Maybe head over and leave a comment on their <a href="http://claudiacanals.wordpress.com/about/">about page</a> to let them know!</p>
<p>Predictions on how long it will take to get to 2 million?</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/83/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/83/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/83/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=83&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2007/05/24/one-million-blogs/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2007/05/picture-6.png" medium="image">
			<media:title type="html">picture-6.png</media:title>
		</media:content>
	</item>
		<item>
		<title>Additional Capacity</title>
		<link>http://barry.wordpress.com/2007/04/16/additional-capacity/</link>
		<comments>http://barry.wordpress.com/2007/04/16/additional-capacity/#comments</comments>
		<pubDate>Mon, 16 Apr 2007 07:32:09 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[scaling]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2007/04/16/additional-capacity/</guid>
		<description><![CDATA[So, I haven&#8217;t blogged much lately but there is a reason. Over the past month we have been hard at work expanding the infrastructure behind WordPress.com and Akismet. Here are some of the things that we have done over the past month or so: Migrated out of San Diego Brought online almost 100 new servers [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=80&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>So, I haven&#8217;t blogged much lately but there is a reason.  Over the past month we have been hard at work expanding the infrastructure behind WordPress.com and Akismet.  Here are some of the things that we have done over the past month or so:</p>
<ul>
<li>Migrated out of San Diego</li>
<li>Brought online almost 100 new servers in 3 new datacenters &#8212; Dallas, TX, San Antonio, TX, and San Francisco, CA</li>
<li>Tripled the database hardware behind WordPress.com</li>
<li>Now serving WordPress.com blogs out of 3 datacenters in real-time</li>
<li>Akismet is now served from 2 datacenters</li>
</ul>
<p>Here are a couple pictures of some new hardware racked and powered on just before we put it into production last week.</p>
<p>From top to bottom (left):</p>
<ul>
<li> 21 x HP DL145</li>
<li> 4 x HP DL365</li>
</ul>
<p>From top to bottom (right):</p>
<ul>
<li> 18 x HP DL145</li>
<li> 4 x HP DL365</li>
<li> 1 x 3U HP Storage Array</li>
<li> 1 x HP DL385</li>
</ul>
<p><a title="new-servers-04-2007.jpg" href="http://barry.files.wordpress.com/2007/04/new-servers-04-2007.jpg"><img src="http://barry.files.wordpress.com/2007/04/new-servers-04-2007.jpg?w=490" border="0" alt="new-servers-04-2007.jpg" /></a></p>
<p>And the back&#8230;.</p>
<p><a title="new-servers-back-04-2007.jpg" href="http://barry.files.wordpress.com/2007/04/new-servers-back-04-2007.jpg"><img src="http://barry.files.wordpress.com/2007/04/new-servers-back-04-2007.jpg?w=490" border="0" alt="new-servers-back-04-2007.jpg" /></a></p>
<p>Thanks to Evan League and Brian Maples of <a href="http://layeredtech.com">Layered Tech</a> for doing the build-out pictured above and sending the photos over.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/80/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/80/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=80&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2007/04/16/additional-capacity/feed/</wfw:commentRss>
		<slash:comments>108</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2007/04/new-servers-04-2007.jpg" medium="image">
			<media:title type="html">new-servers-04-2007.jpg</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2007/04/new-servers-back-04-2007.jpg" medium="image">
			<media:title type="html">new-servers-back-04-2007.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>New servers for WordPress.com</title>
		<link>http://barry.wordpress.com/2007/01/31/new-servers-for-wordpresscom/</link>
		<comments>http://barry.wordpress.com/2007/01/31/new-servers-for-wordpresscom/#comments</comments>
		<pubDate>Wed, 31 Jan 2007 11:30:04 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[scaling]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2007/01/31/new-servers-for-wordpresscom/</guid>
		<description><![CDATA[We are getting ready to place an order for an additional 37 servers in a new datacenter. This new point of presence will serve as the 3rd active node for WordPress.com. Over the past few weeks, I have been doing lots of testing and seemingly endless negotiation with various hosting companies. Background The model we [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=66&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>We are getting ready to place an order for an additional 37 servers in a new datacenter.  This new point of presence will serve as the 3rd active node for WordPress.com.  Over the past few weeks, I have been doing lots of testing and seemingly endless negotiation with various hosting companies.</p>
<p><strong>Background</strong></p>
<p>The model we have adopted is to use commodity hardware to serve all the functions of the site.  We do not rely on SANs or super-expensive multi-processor systems.   Our web servers are usually either single or dual processor machines with 1-2GB of RAM and a small, inexpensive hard drive.  Our database servers are single or dual processor machines with 4-8GB of RAM and 2-4 fast SCSI drives in a RAID array using a hardware RAID controller.  Because there is redundancy built into the architecture that several of these machines can fail at once at the site is unaffected, the individual machines do not need to be extremely robust. Historically, CPU time has been the most precious resource on the web servers and disk I/O on the DBs.</p>
<p><strong>Requirements</strong></p>
<ul>
<li>Provide the hardware outlined above</li>
<li>Support Debian AMD64 or similar</li>
<li>Provide a Gigabit private backend network for inter-server communication</li>
<li>Ability to deploy additional servers quickly and painlessly</li>
<li>Sales and support team that is competent and easy to work with</li>
<li>US Datacenter and not Dallas or San Diego</li>
</ul>
<p><strong>Initial Impressions</strong></p>
<p>Dedicated server providers seem to fall into 2 classes:</p>
<p>1) No-frills provider that offers server between $79 &#8211; $149/month.  No phone support or advanced services.  This would be fine, but they usually cannot provide the DB-class machines we need and do not provide Gigabit backend networks.</p>
<p>2) Full-service provider that offers servers beginning at $250/month and up.  These providers are usually not the best fit for us because they justify their higher prices by saying they have superior support.   We don&#8217;t really need  &#8220;superior&#8221; support, just someone that can take care of hardware issues when needed.  Seems like a waste to pay for something you are never going to use and don&#8217;t really need.  Also, in my experience, the more expensive the hosting company, the more painful the sales process is.  Sometimes I feel like I am buying a car&#8230;.</p>
<p><strong>The Finalists</strong></p>
<p>Over the past month, we have narrowed the field from about 10 different possible providers down to the following 3.  Each of these fit somewhere between no-frills and full-service as mentioned above, but I definitely get the feeling that they lean one way or the other.</p>
<ul>
<li><a href="http://servepath.com/">ServePath</a><br />
Based in San Francisco, California (where Automattic is also based) they seem to lean towards the full-service side, offering 24&#215;7 phone support, higher-end servers, load balancers, and firewalls.  Their sales process has been pretty agonizing.  It is now going on 45 days of back and forth, price changes, configuration changes, conference calls, and about 50 one-on-one calls with our sales guy.   I had chance to visit their offices and tour their datacenter earlier this week so I got a feel of how things work there &#8212; it appears to be a well-run organization.  One thing that struck me as a bit odd was that they do not deploy any rack-mounted servers in their datacenter.  All of their servers, which are built in house, are in tower (white-box) chassis like you would see under an office desk.  This is something I would expect in the lower-end market, but at $500+ per month and rather large RAID arrays (300GB SCSI x 6) I would expect to see more rack-mounted chassis to take advantage of the superior cooling.</li>
</ul>
<ul>
<li><a href="http://serverbeach.com">Server Beach</a><br />
Based in San Antonio, Texas and now owned by Peer1, Server Beach is definitely more on the no-frills side.  When we were looking at new datacenters about 6 months ago, Server Beach could not provide what we wanted &#8212; they did not offer SCSI RAID or Gigabit privatenet, but said it was coming.  Well, those things are now available. Kudos to Server Beach on a super-simple and painless sales process.  Once I contacted them with the configuration we wanted, they scheduled a conference call to discuss the details.  They had members of their support, operations, and sales teams on the line.  About 30 minutes later we were all done and a day later they had sent over a proposal.  It was right the first time &#8211; had everything we asked for and at a very fair price.</li>
</ul>
<ul>
<li><a href="http://textdrive.com/hosting/accelerator">Joyent/TextDrive</a><br />
Honestly, we probably will not go with TextDrive for this deployment, as it is a pretty radical departure from our current configuration, and they don&#8217;t technically meet the requirements laid out above.  They are worth mentioning, however, because they are doing some pretty cool stuff with OpenSolaris, zones, and ZFS, and it sounds like it could be a good fit for our architecture model.  Their storage is super-fast, the container model allows you to replicate existing containers with a single command &#8212; there is no need to provision and setup a new physical server.  ZFS offers all sorts of cool stuff like snapshots, compression, and built-in data consistency checks.  Utilizing this architecture, would require that we maintain 2 completely separate environments &#8212; Linux and Solaris &#8212; and there is a definite time investment in doing so.  I think that we will probably look at moving some of our services to Solaris containers in the near future, but I am not sure it will be WordPress.com.</li>
</ul>
<p><strong>The Verdict</strong></p>
<p>First, let me say that we still have yet to make the final decision, but hope to do so by the end of the week.  Both ServePath and Server Beach seem like they will be great companies to work with.  ServePath is local, so we can walk over to their offices and meet with them if needed &#8211; there is something to be said for working with local vendors.  Server Beach has been a pleasure to work with thus far and I have some experience working with them in the past.  Peer1&#8242;s VP of Marketing also <a href="http://bigmarketing.wordpress.com">blogs on WordPress.com</a>.  Pricing and server configurations are almost identical, so that really isn&#8217;t as much of a factor as one would think.</p>
<p>Anyone have experience working with either of these companies?  Suggestions?  Feedback?</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/66/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/66/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/66/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/66/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=66&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2007/01/31/new-servers-for-wordpresscom/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>
	</item>
		<item>
		<title>New Look for WordPress.com</title>
		<link>http://barry.wordpress.com/2006/12/15/new-look-for-wordpresscom/</link>
		<comments>http://barry.wordpress.com/2006/12/15/new-look-for-wordpresscom/#comments</comments>
		<pubDate>Fri, 15 Dec 2006 04:18:12 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2006/12/15/new-look-for-wordpresscom/</guid>
		<description><![CDATA[WordPress.com has a new look this evening! Big ups to Matt Thomas who did an awesome job on the design.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=51&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p align="left"><a href="http://wordpress.com">WordPress.com</a> has a new look this evening!  Big ups to <a href="http://iammattthomas.com">Matt Thomas</a> who did an awesome job on the design.</p>
<p align="center">  <a href="http://barry.files.wordpress.com/2006/12/wpcomnew.jpg" title="wpcomnew.jpg"><img src="http://barry.files.wordpress.com/2006/12/wpcomnew.jpg?w=490" alt="wpcomnew.jpg" /></a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/51/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/51/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=51&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2006/12/15/new-look-for-wordpresscom/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>

		<media:content url="http://barry.files.wordpress.com/2006/12/wpcomnew.jpg" medium="image">
			<media:title type="html">wpcomnew.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Interesting stats</title>
		<link>http://barry.wordpress.com/2006/10/05/interesting-stats/</link>
		<comments>http://barry.wordpress.com/2006/10/05/interesting-stats/#comments</comments>
		<pubDate>Thu, 05 Oct 2006 01:48:23 +0000</pubDate>
		<dc:creator>Barry</dc:creator>
				<category><![CDATA[scaling]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[wordpress.com]]></category>

		<guid isPermaLink="false">http://barry.wordpress.com/2006/10/05/interesting-stats/</guid>
		<description><![CDATA[As a follow up to Matt&#8217;s September wrap up post, I thought it would be fun to post some more technical stats about the current WordPress.com infrastructure: 80 physical processors 139GB of RAM 91 hard drives with a combined total of over 15 terabytes of storage space 2000 database queries per second spread over 40 [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=34&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>As a follow up to <a href="http://photomatt.net">Matt&#8217;s</a> <a href="http://wordpress.com/blog/2006/10/02/september-wrap-up/">September wrap up post</a>, I thought it would be fun to post some more technical stats about the current WordPress.com infrastructure:</p>
<ul>
<li>80 physical processors</li>
<li>139GB of RAM</li>
<li>91 hard drives with a combined total of over 15 terabytes of storage space</li>
<li>2000 database queries per second spread over 40 MySQL instances</li>
<li>Over 8 million objects stored in memcached serving over 8000 requests per second</li>
</ul>
<p>The best part is that this is just the beginning!  There are many more exciting things to come.  Next up &#8212; expansion to 2 additional datacenters in the US.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/barry.wordpress.com/34/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/barry.wordpress.com/34/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/barry.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/barry.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=barry.wordpress.com&#038;blog=20261&#038;post=34&#038;subd=barry&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://barry.wordpress.com/2006/10/05/interesting-stats/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/713072bbe89035a79c17d19e53dd5d9b?s=96&#38;d=identicon" medium="image">
			<media:title type="html">barry</media:title>
		</media:content>
	</item>
	</channel>
</rss>
