9 ms·
I'm surprised that a site as big as HN is only hosted in one place.
by fotta 6y ago
I'm surprised that a site as big as HN is only hosted in one place.
- cm2187 6y agoYou should look at stackoverflow's hosting!
- aspectmin 6y agoIs this described somewhere? :)
- cm2187 6y agoThe most recent resource I found. I think they basically use a rack in one datacentre. https://meta.stackexchange.com/questions/10369/which-tools-and-technologies-are-used-to-build-the-stack-exchange-network https://meta.stackexchange.com/questions/10369/which-tools-a...
- giantrobot 6y agoThis is the newest version of their architecture I've seen [0]. Compare to an overview from 2009 [1]. tl;dr StackOverflow's architecture is fairly simple and has done mostly vertical scaling (more powerful machines) and bare metal servers rather than virtual servers. They also realize their use patterns are read-heavy so there's a lot of caching and they take advantage of CDNs for static content which completely offloads that traffic off their main servers. [0] https://nickcraver.com/blog/2016/02/17/stack-overflow-the-architecture-2016-edition/ https://nickcraver.com/blog/2016/02/17/stack-overflow-the-ar... [1] http://highscalability.com/stack-overflow-architecture http://highscalability.com/stack-overflow-architecture
- Sahbak 6y agoSometimes, it pays off being extremely simple. In HN, it definitely does
- mromanuk 6y agoAfter this event, they should switch to two servers in different DC.
- centimeter 6y agoHaving two servers is a lot more than 2x as complicated and expensive as having 1 server.
- jpwgarrison 6y agoA wise colleague recently explained to me that if you build HA things HA from the start, it's only a little more than 2x. If you try to make an _existing_ system HA, it's 3x at best. HN is not a paid service, they can be down for a few hours per year, no problem. We're not all going to walk away in disgust.
- joshmanders 6y agoNot to mention the HNStatus[0] twitter account has so few tweets[1] I don't think it's even worth it. [0]: https://twitter.com/HNStatus https://twitter.com/HNStatus [1]: Last tweet since before today's incident was 2 years ago, 4 years ago since the one before that.
- johannes1234321 6y agoWhen going to two you need to handle split brain some way probably, otherwise you end up with an database state hard to merge, thus you better get three, so two can find consensus, or at least an external arbitration node, deciding on who is up. At that point you have lots of complexity ... while for HN being down for a bit isn't much of a (business) loss. For other sites that maths probably is different. (I assume they keep off-site backups and could recover from there fairly quickly)
- ethbr0 6y agoI haven't run a ton of complicated DR architectures, but how complicated is the controller in just hot+cold? E.g. some periodic replication + external down detector + a break-before make failover that brings up the cold, accepting any unreplicated state will be trashed and rendering the hot inactive until manual reactivation
- jsty 6y agoUntil 2018 at least it was ... wait for it ... a single server! https://news.ycombinator.com/item?id=18496344 https://news.ycombinator.com/item?id=18496344 (Anyone know if that's still the case?)
- dang 6y agoOne production server and one failover (in the same data center, obviously).
- betamaxthetape 6y agoI assume there are off-site backups, though? Asking as someone who was impacted by the OVH fire last week, and I didn't have recent backups and therefore lost data.
- Aperocky 6y agoHN is probably very small. Curious as to the minimum size of the backend that will hold up the website. There may need to be read replicas, but maybe not even that is needed.
- _joel 6y agoThey only have one server, iirc.
- voxadam 6y agoAnd, if I'm not mistaken, the site is single threaded.
- aspectmin 6y agoWould love to see the HN architecture.
- krapp 6y agoarclanguage.org hosts the current version of Arc Lisp, including an old version of the forum, but HN has made a lot of changes locally that they won't disclose for business reasons. There's an open source fork at https://github.com/arclanguage/anarki https://github.com/arclanguage/anarki, but it doesn't have any direct relationship with HN.
- mike_d 6y agoSingle threaded LISP application running on a single machine. Ta-da.
- dang 6y agoThe application is multi-threaded. But it runs over a green-thread language runtime, which maps everything to one OS thread. That's a significant distinction because if you swap the underlying implementation then the same application should magically become multithreaded, which is exactly the plan.
- deleted 6y ago
- mwcampbell 6y agoRunning on a single server is cheaper, and nobody loses money if HN is down (as far as I know), so it makes sense.