The traffic to this little weblog is scarily regular: on an average day Google Analytics reports between 1,300 and 1,500 visits and between 1,600 and 1,800 page views, day after day after day, with a little dip in traffic every Saturday. Things have been going on like this for the 4 years that Analytics has been in place keeping track of things.
Yesterday, however, things were different. We have a weekly conference call with our colleagues at Yankee every Friday, and yesterday afternoon just after the call got started I began to notice evidence that the server that powers both the Asterisk telephony server that was hosting the conference call and the Apache server that hosts this weblog was more heavily loaded than usual. Things weren’t exactly grinding to a halt, but the voice quality of the conference call was slightly degraded and the response time for the blog was a little slower than usual.
Balancing my need to be present for the conference call against possible technical doom, I began to plumb around for evidence that might suggest what was going on when a helpful email from TJ Lewis came in:
You probably already know but, your blog post about replacing the laptops with paper is #1 on hacker news right now.
This was followed, a few minutes later, by a tweet from Tom Purves:
Cool! PEI’s @ruk at the top of Hacker News | How to replace 30 laptops (and $10,000) with 150 sheets of paper.
Sure enough, over on the front page of Hacker News was an item, posted by Alexander O’Neill, linking to my post about Elections PEI, laptops and pieces of paper:
The post stayed in the number one ranking for a couple of hours, and incoming traffic from that post was responsible for my suddenly slightly-more-sluggish server. Here’s a graphic showing network traffic hitting the webserver, which took a sudden leap around 3:00 p.m. yesterday and gradually died out over the following 8 hours:
Here’s a screen shot from Google Analytics showing the regular everyday level of visits to the weblog followed by a sudden jump yesterday:
And here’s the Google Analytics graph showing hour-by-hour visits for yesterday:
Over the last almost-24-hours Hacker News referred 12,278 visitors here, 98% of whom had never been here before. The Hacker News readership is an interesting niche of Internet users to look at in more detail. Browser usage for the those 12,000+ visits from Hacker News breaks down like this, vs. the general browser usage of visitors to the blog:
|Browser||General Usage||Hacker News|
Take-away from this: hackers don’t really warm to Internet Explorer.
Geographically the Hacker News readership was of a very different pattern too: San Francisco, New York, Seattle, Toronto, Mountain View, London, Chicago, Los Angeles and Cambridge were the top cities for Hacker News referrals, whereas Charlottetown, Toronto, Halifax, Calgary, Ottawa, Edmonton, Montreal, Vancouver and New York are the top cities on a typical day.
At the peak of the Hacker News traffic influx my Apache server was serving about 50 requests per second; with the exception of a Apache restart that I initiated when I was probing around initially, and a short blip caused by a Drupal cache refresh I triggered to compress CSS files, Drupal and Apache did a bang-up job of keeping up with the traffic, and it’s nice to see that a pokey old server like the generic white box up in the server room could keep up, even if it did make for a slightly-choppy conference call.
Most interesting for me in all of this, technical details aside, is the 86 comments on Hacker News to read through: lots of interesting commentary there, some on-point and some on wild tangents.
If you can afford the memory, putting Varnish in front of Drupal would take almost all the load off your server:
Drupal + Memcached is a pretty good combination that’s short of taking Drupal right out of things. It’s been working well at Almanac.com for the last year. But certainly Varnish, or something Varnish-like is the next logical step.
Another bump in traffic two days later, about 50% of the Hacker News bump, from this Metafilter post to the same story here.