I remember I self-hosted a Ghost blog and mirrored/served the content with a CDN. It was tricky because once I changed a post, or altered the blog's code, the CDN had to be manually cache-busted if there was any change on the VPS instance of the blog. I done that a scary amount of times, making me believe blogs & blogposts are never 'finished'.
Some of my posts were picked up by various news outlets and that spiked the traffic. I was thankful I served it from a CDN because my Digital Ocean instance surely would have went offline due to the attention / hug of death.
Does Dynablogger handle traffic spikes gracefully?
My own homepage/blog is hosted on a cheap 100mbps box on OVH (the server has 16gb of RAM but the CPU is from ~10 years ago or so); I use self-hosted Ghost with a caching nginx reverse proxy. Cache expiration is around 30 minutes (I think). The price for such box is around 20 EUR/month for the whole server.
In order to crash such an instance I'd need an insane amount (of course now that I need the hard numbers I cannot find the log I had dumped at the time with Locust) of simultaneous users - something that never got close to happening, not even in those couple of times where I reached the frontpage on HN. My best posts got the box/bandwidth at around 1% the load that was needed to start dropping a significant number of requests.
Don't optimize for the problems you wish you had.
I don’t agree. A few months ago my blog post on CRDTs got 100k views within a week after landing on the top of HN. It’s just hosted on ghost with some poorly written custom theme that loads a ton of CSS for some reason. The VPS I host it from wouldn’t have dealt with the traffic - it served over 50 gigs within a week; and that’s over my VPS’s monthly cap iirc.
I have the whole site behind Cloudflare’s free plan and it handled the load flawlessly. And cloudflare also makes the webpage load faster for everyone. It seems like a no brainer to me.
A static blog post that requires ~0,5 MB of transfer can be easily served from low powered server in an hour. That's only slightly above 100 Mbps and 27 rps. Servers are fast, much much faster than that.
Of course, poorly written code might make any solution too slow.
But is the added complexity worth the whole thing? For a personal blog?
Static site generators I nice, but I just prefer hit and save to publish immediately. As for CDN and caching, DynaBlogger uses Cloudflare as CDN and does a lot of caching of the dynamc content too.