Site Monitoring: Shared vs Dedicated Hosts

One thing about running servers is they’ll drive you insane with worry, unless you’ve set up a system to notify you if anything is amiss. I’ve been using the beta of site24x7 to monitor chartpart, and it’s a nice service. The service can check your site at 15 minute intervals. It can trigger an email to you on downtime, of course, but also when response time crosses certain thresholds, or content changes by a certain % (I’m not certain the last type is working correctly yet).

Here is an interesting chart I grabbed today from site24x7, showing response time of chartpart.com over the last week.

You can clearly see my switch a few days ago from a shared host (textdrive $12/mo) to a dedicated server (aplus $50/mo). The best case response time is similar, but the worst case on the shared host can be quite bad when other users of the same box are generating loads.

Another related change that happed at the same time: on the shared host I was running the rails app under lighttpd. In setting up the dedicated server, I switched to the hot new thang: apache mod_proxy_balancer + mongrel.

Shared hosts are great for prototyping a new site, but either a VPS/VM (with dedicated resources) or dedicated host is essential for production deployment.

The response time graph is now a thing of beauty, and I can sleep better knowing I’ll get alerted if it goes south on me. And I have nice graphs to quickly get a sense of historical performance, if anything changes.

When a DNS change is in flight

Chartpart may bounce around for the next few hours. The new dedicated server is now all configured (more on that later), and the switch over has been triggered.

The domain is registered at godaddy.com, but the actual DNS records for chartpart.com are hosted at zoneedit right now. It may take some time for all these changes to replicate around. Both the old and new servers are up and running, so while the DNS change is replicating, you also get this interesting effect where some people will be directed to the old server, some to the new, while the DNS change is in flight.

To read more about how all this works, read the “what’s going on behind the scenes” question in the internic FAQ. Many players and some non-trivial coordination.

This week’s pre-beta updates

A few small updates have been deployed this week to chartpart in preparation for calling it “beta”.

  • The API (that is, the URL you construct to generate a chart) has been cleaned up and has no more major breaking changes planned now. Many of these changes were about getting the URLs to be as short and human-readable as possible.
  • Some other rendering, labeling, and default-options handling bugs have been fixed
  • The default chart shows off multiple series and series labels

Any feedback on the site’s look or functionality are very welcome. If you want to be an early adopter — posting charts to a blog, wiki, or whatever that you own — I’d love to flesh out the “examples” page before beta with a link to your work. Please go for it! When any feedback has been incorporated, and chartpart has been deployed to its dedicated server, I’ll post here with the “public beta” announce. Thanks.

Chartpart pre-beta updates

Chartpart is not ready for a wide beta — if for no other reason, it’s still on a shared host, limiting it to a few hundred hits/hour. I’m also not ready to lock the API in concrete, and a wide beta sends that slurry mush down its hardening process.
But if you’re curious, a new pre-beta version was deployed this week, cleaning up some of the front-page layout problems among other things.

Changes include

  • Better application of CSS techniques. See my tags for some of the CSS tutorials I used.
  • Better colors & layout that doesn’t jump around as images refresh. You see, I’m terrible at graphic design. It’s time consuming and painful. So, I adopt the best response I can: keeping layout, colors, and the like as minimalistic and simple as possible. Any suggestions for better applying that philosophy to the site?
  • “About” and “Examples” pages — What’s there is just a start, but any particular questions you’d like to see answered there?
  • Chartpart is now using wufoo for the feedback survey (try it out). Wufoo is another example of a nice fremium web service (up to 100 entries/mo free). I’ve found the response time a little slow. It would be nice if wufoo provided some performance assurance, at least for paid accounts.

A future posting will have more on the importance of creating feedback loops, which applies to several aspects of what is being done here.