After a couple of days of near-death, which followed a week or two of crawling speeds, following about a year of general sluggishness due to high traffic, the MMM blog has finally been massively upgraded to a completely new and very speedy web server. Whereas loading the main page used to be sort of a “whirrr..clunk..clunk..hmppphlzzz..plop” experience, as I test it today, it is decidedly more “Vssshhhhhh…BANG!!”
While I’m excited at the time savings this brings to my own daily life, I’m even more excited for how much time it will save YOU. If you multiply our 2.3 million pageviews in the past month by the average of 3 seconds of loading time the new server should eliminate, you get 1916 hours per month or about 80 days of people’s lives which are no longer wasted, every month. If we value your time at $40 per hour, this server upgrade is saving about $76,640 of the readers’ collective time every month. And yet the upgrade is costing me considerably less than that. So I apologize for not getting this done sooner!
Although in the end we just moved a bunch of bits around on hard drives scattered around the Internet, it was actually a pretty dramatic story. Without getting into too much technical detail, here’s how it all went down.
MMM: “Damn! This website has really slowed down recently. We used to be able to handle up to 900 simultaneous people, but today it seems to be capping at 100. What gives?
Mrs. MM: “Don’t worry – it’s probably just some temporary stuff that will resolve itself”
Website: “Yeah, good luck on that fantasy, suckas. ERROR ESTABLISHING A DATABASE CONNECTION!”
Mrs. MM: “Shit, I guess this is serious. Here, I’m poking around and I think I found some problems that should speed things up”
MMM: “Oh, thanks so much, honey! You are great. I’m going out to work on some stuff outside.”
Website: “ERROR ESTABLISHING A DATABASE CONNECTION! ERROR! ERROR! I’m only serving 80 simultaneous readers now! The other 200 can wait!”
The Mustachians: “WTF Dude!? Can you fix your site, or what? I’m going to go read something else now”
Google Search Engine: “Your website is too slow, I think I will lower your rank and stop sending you visitors”
MMM: “Faaack. I think we need to upgrade to a bigger webhost. Let’s try ServInt, since Pat Flynn used it for a while. His recent website crash was probably just a fluke and I’m sure it’s good enough for us, right?”
Mrs. MM: “OK, I’m cool with setting that up. Doot dee doo, click, type, workworkwork”
MMM: “Wow, what a great wife you are! I guess I’ll just go out and do some more fun construction stuff while the weather’s nice”
later that night…
Mrs. MM: “I am TIRED! But I got the whole site transitioned to ServInt. Whew! I’ll just set the DNS servers to switch over and we’ll see how it looks tomorrow morning.
even later that night..
ServInt Web Server: “La-dee-daa, I’m a brand new website running on a nice $600/year VPS server, I can handle lots of traffic.. WHOOM!!!!… ACK!! NOT THAT MUCH TRAFFIC! TURN IT OFF! TURN IT OFF!! CRASH!!!.”
the next morning..
Mrs. MM: “Umm.. ServInt Customer Support, why is our brand-new website not working?”
Servint Customer Support: “Uh… well, your server had too much traffic, so we had to throttle it. It looks like all legitimate traffic and not a denial-of-service attack, but there’s just like 200 people trying to access your WordPress blog at once. That’s too much for us”
Mrs. MM: OK, so you’re telling me that this service is slower than our Bluehost Pro account that costs less than half as much. I guess I’ll keep shopping around. Buh-bye”
Web Developer Superstar Kevin Worthington:
Mrs and MMM: Hmmm…
At this point, we had to gaze deep into our souls and make a big decision. This blog has been a family-run deal since its inception, and when you bring in an outside developer, you need to hand over your administrative passwords and the feeling of control and safety that you get when you know your fate is in your own hands. But we also knew that in exchange for forking over some trust, you usually get a lot more than you give away. I’ve wanted to get more creative people involved with MMM for a long time, since the potential for growth would be unlimited. A filmmaker making rich little films for the YouTube channel. A bike advocacy flash mob team that makes people start biking all around the world. Co-ops of various sorts where you can build and invent things and help others do the same. A foundation that funds things. The more, the merrier. Anyway, that’s the future. Right now we don’t even have a website.
Mrs and MMM: YEAH! How can we do it?
Kevin: Well, I like the web host called Digital Ocean. It’s super-advanced and speedy, but the configuration is more manual so you need pretty advanced Linux system administrator skills to set it up. But I’ll do it for you. I’m an MMM reader, and we’re just cool like that.
THEN, we can make it even faster, by hooking up a Content Distribution Network in FRONT of the server, so a worldwide network of other servers blasts out the images and other static content based on geographic proximity, which will lessen the load on your main server even further, making the thing crazy, blazing fast.
Mrs. and MMM: Umm.. SURE!!
a few hours later…
Kevin: OK, I got everything working.
A Large Number of Mustachians: Thank You Kevin Worthington Superstar Developer!
There is still more neat stuff to come behind the scenes – the CDN mentioned above, plus with Digital Ocean we have the option of seamlessly upgrading our speed every time the site grows to the next level. I’m thrilled to have a real, brilliant, up-to-date tech guy on our side and hope this partnership will blossom over the coming years. He will obviously get a fine place on my Recommendations page. But for now, let us all just bask in the fact that the website works again.
Update: while we’ve got much faster load times in general, there will still be some bumps and brief periods of downtime as the optimization continues. So if you get a delayed load time occasionally or a 404-not found error, just give it a minute and reload.
Further Detail: I took down yesterday’s post about the transition-in-process to avoid confusion, but here is a comment Mrs. MM wrote which I didn’t want to lose, since it sums up some of her thoughts on the process:
I just wanted to mention a few things and write a quick update.
First, Bluehost has been awesome and I would highly recommend them to anyone starting a blog. It is VERY easy and they do a great job. It is one of the few places where you can install WordPress and get a site going extremely fast. They also have a lot of support and documentation. I have heard that there have been issues in the last week for some, but I’m sure it will be resolved.
Some of the other web hosts we have tried have been much more complicated to use and require more skill (so far we’ve tried AN Web Hosting, ServInt, and now our site is on Digital Ocean!). I would not recommend those other hosts unless you really know what you are doing or if you get a lot of traffic on your site and need more than what bluehost is offering (apparently Bluehost is coming out with more options soon though, so stay tuned).
As for the update, we initially made our move to ServInt this morning and as soon as we went live, the server immediately CRASHED! ServInt informed us that our traffic was too big for them to handle. Huh, that is pretty crazy. So, even Bluehost did better than them in this regard.
I was desperate and even though I always try to do everything myself, I realized it was time to ask for help. So, when @kworthington tweeted that he would be willing to help, I jumped on the chance. You can find him at http://kevinworthington.com/. He knew exactly what to do and got right on it.
He set us up with Digital Ocean (a Linux based server that I would have had no idea how to configure) and got us up and running in no time. Even the forum works! (we’re still working on e-mail, by the way).
From what I’ve seen so far, the site is lightning fast and Kevin has ideas to make it even faster. We could not be happier.
This was a big lesson for me. Sometimes outsourcing is worthwhile when you don’t know what the f*ck you are doing. I was practically up all night working on this and Kevin got it all done in only a couple of hours.
Anyway, thanks for your patience and we’re excited to move forward on our new server!!