3 ms·
Sure. But the thing is: is there literally not a single component in that mainframe that cannot cause a single point of failure to the whole system? If so, I a
by valenterry 3y ago
Sure. But the thing is: is there literally not a single component in that mainframe that cannot cause a single point of failure to the whole system?
If so, I agree - in that case it would be similar to running two severs in the same AZ. Which provides a certain form of availability.
Otherwise I disagree, because as soon as you have a single point of failure, your system is limited by the availability of that specific part, whereas in a distributed system you can by design increase availability by adding more nodes, at least up to a certain point.
Think about it: I can run the two servers I mentioned about in the same AZ. But I can also move them to a separate AZ each. For a distributed system it doesn't matter conceptually. That doesn't mean that there is no impact on the availability or performance, it just means that I don't have to change the logic of my system.
For a mainframe however that's not true - and that is what makes the charm of it: because I don't have (and don't want) to care, which simplifies things a lot; at the expensive of (the option of) the availability of a distributed system.
- filleokus 3y agoI've been "arguing" AGAINST mainframes on HN in the past, and after that I've seen many really cool presentations about them. One, quite commonly known, is that two separate mainframes can run completely in lock-step if they are less than ≈ 50 km / 30 mi apart. So if one explodes mid instruction it will still continue fine. As for a single system, I don't think there is any single point of failure, you can swap cpu's mid operation.
- valenterry 3y agoFirst of all, I'm not arguing against mainframes or anything! I'm just trying to clarify/explain terms and remove confusion. Just to get that out of the way. > One, quite commonly known, is that two separate mainframes can run completely in lock-step if they are less than ≈ 50 km / 30 mi apart Since they are 50km apart, they are connected to each other by one or multiple cables. I assume that they are also both connected to the internet (or something else that matters) so that if one burns down the other can take over. Correct so far? If so, then please answer this questions: how does the system behave if all the cables between the two machines are severed, for an unknown time?
- gwbas1c 3y agoMore importantly, for a lot of the things that people build today, a mainframe is powerful enough to handle however large the load will get. The ultra-scalable techniques that Google, Facebook, ect, use are great, but most applications do not need that kind of scalability. Throwing a little more money on a fancy mainframe is much, much cheaper than the programmer time needed to build a distributed system.
- deleted 3y ago[deleted]
- jameshart 3y agoI’m not arguing for mainframes here. I’m just saying that when you opt to improve your resiliency and availability by distributing your system, rather than by, say, adding more redundant power supplies and burying your computer in a deeper bunker, you are making your system partitionable, and that means you have to give up either consistency or availability. Which is odd, when you think about it, since you allegedly made this choice in order to get better availability.
- harkinian 3y agoRight, if absolutely everything in the mainframe were redundant, that'd be two mainframes connected by a network, so P.