Veldt.ca just another nerd

How Facebook’s infrastructure is self-healing

Facebook, while a service I will not use, do have an excellent engineering team. FBAR, their self-healing service, is an example of their engineering excellence. (via DevOps Weekly)

Managing latency problems on Linux

While this article is ostensibly about Redis on Linux, I think the problem is general enough that most of us would benefit from reading it.

Copyright thieves

The corporations who are hell-bent on perverting copyright are the real thieves. John Perry Barlow, whom I’ve followed since he wrote for NeXTWorld magazine, went to the eG8 conference. It wasn’t a pretty sight. (Wired expresses shock that Barlow is a rancher. He took over his family’s ranching business a very long time ago, then sold the ranch in 1988.)

How to survive a Fireballing

There were several reasons why I chose WordPress for this blog. One of the minor reasons is to prove how easily (not really) one can configure WordPress to survive what used to be called the /. effect, and what is now, in the age of Twitter and Apple mania, called a Fireballing.

John Gruber, the Philadelphia fish behind the fireballs, always has his nose in the air about WordPress. His site is static and sits on a very beefy server. It’s always fast. The same cannot be said of many self-hosted WordPress sites.

WordPress is dynamic by design. It’s extremely popular and relatively easy to use. So yet more people run it. But then they get fireballed.

Brian Stucki, the fellow behind MacMiniColo, used one of his Mac Mini’s to host fireballed.org. A Mini hosting static pages is more than good enough to survive a fireballing, and probably even a combined fireballing and /. effect.

The problem is that unless you’re a programmer or a sysadmin, configuring WordPress to survive a fireballing is too difficult.

Before installing WordPress, I installed Percona‘s version of MySQL. It’s faster, more stable, and its default settings are pretty good. MySQL’s defaults are rather poor for a WordPress-backed site. Rafe found his default setting to be 0. Percona’s default is 16 MB. (My VPS has 768 MB of RAM, Rafe’s has 512.)

After installing WordPress and loading it up with a few articles, I used ab from another computer rather far away to generate the traffic. Yes, I know bloggers, but not engineers, use ab, but I just needed to whack a blog, not correctly test Twitter. Testing 1,000 connections, each making 100 requests, I saw 22 requests per second. Not bad. But we can do better.

Next I installed WP-Cache. Yes, I know WP-Super-Cache is even better, but configuring it is more of a beast. Improvement? Indeed. 450 req/sec, up from 22. Definitely good enough to survive a fireballing.

 

Links for 2011 Apr 9

Pamela Jones, aka PJ, plans to retire Groklaw on May 16th. I was rather surprised to read that she started Groklaw eight years ago. Seems like yesterday that I was excitedly emailing links to her articles when SCO, aka M$’s proxy, tried to kill Linux. They’re still trying. But, as PJ says, now they’re going after Google, and Google can well afford to defend themselves.

Russ Cox makes an appearance on The Setup. I always find the articles interesting, and sometimes they help remind me not to take others too seriously. But Russ is an engineer’s engineer, and I’ve learned a few things I will make part of my toolkit.

FB, to my surprise, have done something v interesting: Open Compute. It’s not that their server design makes them cheaper than a box from Dell, but that they’ve made a very efficient server. There is very little power wasted. On a Dell, HP, or otherwise generic server, much of the power delivered to the box is thrown away. Every university data centre I’ve visited in Canada (three of them) all have capacity problems. They always seem to be just one plug short of a complete failure.

Mike Loukides wrote a brief article demonstrating the power, and utility, of a handful of command-line tools. You can do a lot with a little. But it takes a long time to become proficient with the tools, unless you’re able to use them daily.

Links for 2011 Apr 3

Will Shipley on whether success is a lottery or the result of a bit of work: Success and Farming vs Mining.

Tim Bray on improving the typography on his web site. Another engineer following someone who simply voices a loud opinion, but no facts. (My alignment here is ragged right for a reason.) Everyone who is interested in typography, whether the medium is a web page or a printed book, would do well to read Robert Bringhurst’s The Elements of Typographic Style. Jan Tschichold is another writer on typography who is well worth reading. If you want a young punk’s opinion, have a look at what Craig Mod has to say, and, more importantly, what he’s done with typography.

Kansas City is getting Google Gb. That isn’t too interesting. What is interesting is why they were chosen. And what it means for the rest of the country.

ipv6

For some months I’ve considered putting a blog together. But does the world really need another blog?

Then earlier this week, on Twitter, @ryah pointed to an blog post where Avery Pennarun wrote 4,201 words, at last count, explaining why he thinks IPv6 is a stupid idea. What I found shocking was that someone who I’d otherwise previously thought was intelligent, wrote at length about something he had never implemented or read about in detail, and pronounced it stupid. That djb declared IPv6 a mess back in 2002 was good enough for him. @ryah said “voice of reason”, which made what’s left of my hair stand on end.

@ryah is, for the most part, pretty sharp, and his project, Node.js, has done more to kick web development forwards than most anything else in the last few years. But, engineers are supposed to prove that things will work, then build it. And if an engineer thinks something won’t work, then she proves it, and builds something that will work. Engineers aren’t supposed to sit back like Archie Bunker and pronounce everything stupid that they don’t understand or care to think about any longer than it takes to RT and ditto.

IPv6 is in some ways simpler than IPv4. The only thing more complex is that addresses are 128-bits, instead of 32-bit. The notation is slightly different. But is 2001:470:a:487::2 really that much more difficult to memorise than 97.107.138.132? (Both addresses are for this server.) Or to read? That hasn’t been my experience. Yet I can’t remember my phone number. All that means is that I don’t give out my phone number very often, nor is it important to me. It does not mean that phone numbers are stupid.

What is true about IPv6 is that it’s “another” network and you have to go out of your way to get a subnet. Most ISPs in North America don’t yet support IPv6. But it’s still easy enough to get one or even a full subnet. This server and my home connection both have /64 subnets assigned courtesy of Hurricane Electric. An IPv6 /64 subnet has substantially more than 4 billion IP addresses, which is more than the whole of the IPv4 Internet. But once ISPs are ready, provisioning is mostly automatic. At work we just finished our IPv6 project. All the desktops and laptops in the company are IPv6-enabled. We didn’t have to touch anyone’s computer. They can reach IPv6-only sites as easily as they can IPv4 sites. We did have to touch every server and router. But it wasn’t any more onerous than setting up an IPv4 network.

So if I can help provide a full-dual stack network at work, provide one on my Linode VPS and at home, and everyone’s computer at home is automatically dual-stacked, it’s not rocket science. It’s not even difficult. It is, in fact, remarkably easy.