Distributed systems (advantages and disadvantages)

What are the advantages and disadvantages of a distributed system?

Author: Maniero, 2019-02-28

1 answers

The biggest advantages:

  • scalability - you can "easily" grow fulfillment capacity by adding new execution nodes, and this makes meeting large demands on time. Contrary to what people think, it doesn't get any faster. You have more trucks carrying a cargo doesn't deliver the cargo faster, just delivers more cargo in the same timeframe.
  • resiliency-if one node has problems the others continue to operate and the system as a whole does not stop.

All other advantages are derived from these or without much importance.

Main disadvantages:

  • complexity - this is one of the most difficult problems to solve in all computing, coordinating everything is complicated, it costs dearly in every way, and the chance of something going wrong in the process is great. Here I include security problems that appear, although they are not insoluble, they are only complex.
  • waste-it is common to use much more resources to operate in this modality since there is a cost of coordination.

There are also disadvantages derived from these or any.

Depends on:

  • cost-there are cases that the cost can be lower using one or the other. What a lot of people don't realize is that what looks cheap can become expensive. There are very specific situations that not doing distributed becomes unworkable, and that's the good news. The problem comes when it seems that you can do without distribution, and then the hardware will cost very expensive, or even the software has to be done in very detailed terms with a lot of optimization and this can be absurdly expensive.

The opposite seems to be more frequent. People choose the distributed one on account of the advantages, and do not even care about the cost, it will cost more, but the person thinks he needs it anyway. It turns out that very rare problems really need the distribution, at least the actual distribution, the one that needs coordination and not just simple installment of workload absolutely independent (This is not distribution).

Some people may find that it doesn't need to be complex, and it's true, if you give up the reliability, security, and other features that are normally needed. Where you can give up partially can get simpler. That's why those who use distribution most have features in their problem that are too simple or can give up some of those things. The problem is when the person has something to solve that is not so but he thinks the distribution is good for his case, and he does not even notice the roll where he is getting into.

I'm talking about the traditional distribution with multiple computers, but more or less it goes for any kind of distribution.

Is pretty much the same thing as having a person or a team working on a project. Think in terms of people. Which one do you choose? When you decide to switch to another way?

 9
Author: Maniero, 2020-09-01 12:21:42