I run a virtual server on Linode which hosts, among other things, the blog you are currently reading. The server doesn’t get a lot of traffic and is rarely busy or overloaded, so when I get an alert from Linode that its CPU has been pegged for the past two hours, as I did early Friday morning, I usually take the time to find out what’s going on:
One of the pages on my blog is the user guide for the Send Later add-on, which I wrote and maintain, for Thunderbird, SeaMonkey, and Postbox. It turns out that this is the explanation for the load spike on my server, and it’s an interesting enough explanation (just barely) that I figured it was worth a blog posting.
Send Later has around 77,000 average daily Thunderbird and SeaMonkey users (Postbox users aren’t tracked). That means that there are on average around 77,000 copies of Thunderbird and SeaMonkey running every day with Send Later installed.
Thunderbird and SeaMonkey (this is getting cumbersome, so from now on when I say “Thunderbird” assume that I mean both Thunderbird and SeaMonkey) automatically check for add-on updates when they start up, and daily in the background when they’re kept running for more than a day. When I release a new version of Send Later, Thunderbird upgrades to the new version the next time it starts up.
Send Later version numbers are in the format major.minor.patch, for example, “6.1.3”. Patch releases, e.g., for translation updates or bug fixes, happen invisibly in the background when Thunderbird starts. However, major or minor releases are visible to the user because they cause Thunderbird to automatically display the release notes by opening a link to them at the end of the user guide (see where this is going?).
In short, when I released a new minor release of Send Later at around 2:15pm (US/Eastern) on June 15, I invited 77,000 people to download the Send Later user guide from my Linode server. Here’s what that looked like:
So, yeah, I could see how nearly 1,400 people per hour (one every 2.7 seconds) downloading not only the user guide, including all of the scripts, style sheets, and images required to display it, could put a bit of a load on my server.
Note, incidentally, that only 26% of the users of my add-on are using it in English. The second highest percentage, 22%, is Japanese. So it is understandable that the daily upswing in the graph when people turn on their computers and start working for the day happens very early in the morning US/Eastern time — it’s not early in the morning where there are more users than in the United States!
Things settled down over the weekend, but then — no surprise — there were even bigger load spikes on Monday morning when literally tens of thousands of people came in to work and fired up Thunderbird for the first time that week. Then — again, no surprise — things tapered off as almost everybody was finished being upgraded to the new version.
If the upward trend in the number of users of the add-on continues, I may just need to upgrade my server before the next time I do a major or minor release of the add-on.