Hacker News new | ask | show | jobs
by jenius 4883 days ago
If you're hosting some sort of blog post, the best way to ensure that all goes well with high traffic is to make it static. Something like jekyll works great for this (publishing especially), and you can host any static site with a node server in like 3 lines of code on nodejitsu for $3/month.

Nodejitsu can handle hacker news traffic without even the slightest blink, with one dyno - I had a post up on the homepage for hours with over 200 concurrent visitors and like 13,000 total for the day and never had a single issue. Again, $3/month for that.

No need to over-complicate things : )

1 comments

Really, I don't know why dynamic languages became so popular for blog platforms.

It's an overkill all you need is static content.

Non-programmers find it much easier to log into a site, type in a text box, and click 'submit' than to run some sort of static site generator.
If you're at the stage where you're maintaining your own server anyway, it doesn't seem like too much to ask.

Static websites are glorious. Much more secure, much faster to load, far fewer things that can go wrong. Cheaper, too, since they require fewer resources. And, as luck would have it, there's a perfect Hacker News thread to get one started:

http://news.ycombinator.com/item?id=4857473

Or, if you really want or need a dynamic website, throw CloudFront or similar in front of the site.

Then lock down your CMS at a secret, SSL-only URL.

It's about 2 lines of Ruby or PHP to ping CloudFront and request an invalidation when you change a page (which only happens rarely anyway.)

Secure, fast, dynamic, only goes down if CloudFront does.

I agree, but we weren't talking about maintaining your own server, just static languages and blog platforms.

I use Jekyll/Octopress all the time, I totally agree, static sites are great. But non-programmers are never going to use it.

To add to that. You can add a whole lot these days via Javascript. You want to get some comments? Just embed a Disqus widget. Want some feedback? Embed a getsatisfaction widget.