Questions tagged [distributed-system]

A distributed system consists of a collection of autonomous computers, connected through a network and distribution middleware, which enables computers to coordinate their activities and to share the resources of the system, so that users perceive the system as a single, integrated computing facility.

A distributed system is a software system in which components located on networked computers communicate and coordinate their actions by passing messages.

1253 questions
126
votes
3 answers

What is Bulkhead Pattern used by Hystrix?

Hystrix, a Netflix API for latency and fault tolerance in complex distributed systems uses Bulkhead Pattern technique for thread isolation. Can someone please elaborate on it.
Sashank
  • 1,450
  • 2
  • 12
  • 17
62
votes
4 answers

Why isn't RDBMS Partition Tolerant in CAP Theorem and why is it Available?

Two points I don’t understand about RDBMS being CA in CAP Theorem : 1) It says RDBMS is not Partition Tolerant but how is RDBMS any less Partition Tolerant than other technologies like MongoDB or Cassandra? Is there a RDBMS setup where we give up CA…
Glide
  • 20,235
  • 26
  • 86
  • 135
52
votes
2 answers

What do we mean by "top percentile" or TP based latency?

When we discuss performance of a distributed system we use the terms tp50, tp90, tp99.99 TPS. Could someone explain what do we mean by those?
user1071840
  • 3,522
  • 9
  • 48
  • 74
50
votes
6 answers

Load balancer and API Gateway confusion

I have always worked on mobile technologies and now I am stepping into backend systems, more specifically systems design. I keep coming across conflicting statements for the roles of api gateway and load balancer. Googling has only returned the same…
Farhan
  • 1,000
  • 1
  • 11
  • 22
46
votes
5 answers

Message queue and Message broker differences

so I've been trying to understand what are the differences between message queues and message brokers and why should you use one over the other. So from what I've understand. MESSAGE QUEUE helps with inter process communications, but it is limited…
user9124444
39
votes
2 answers

What is the difference between Java RMI and JMS?

When designing an distributed application in Java there seem to be a few technologies that address the same kind of problem. I have briefly read about Java Remote Method Invocation and Java Message Service, but it is hard to really see the…
Jonas
  • 121,568
  • 97
  • 310
  • 388
33
votes
7 answers

Best distributed filesystem for commodity linux storage farm

I have a lot of spare intel linux servers laying around (hundreds) and want to use them for a distributed file system in a web hosting and file sharing environment. This isn't for a HPC application, so high performance isn't critical. The main…
Eric
  • 321
  • 1
  • 6
  • 17
31
votes
2 answers

What are the essentials of real-time distributed systems?

I am getting my foot into contracting and have had today my first round interview for a contractor position. I have passed it however I was told - being mainly a UI developer - I only covered the basics of what they needed for their backend, and I…
Houman
  • 64,245
  • 87
  • 278
  • 460
31
votes
8 answers

Contradiction in Lamport's Paxos made simple paper

Phase 2. (a) If the proposer receives a response to its prepare requests (numbered n) from a majority of acceptors, then it sends an accept request to each of those acceptors for a proposal numbered n with a value v, where v is the value of the…
lambda
  • 585
  • 6
  • 10
28
votes
3 answers

paxos vs raft for leader election

After reading paxos and raft paper, I have following confusion: paxos paper only describe consensus on single log entry, which is equivalent the leader election part of the raft algorithm. What's the advantage of paxos's approach over the simple…
Oliver Young
  • 578
  • 1
  • 4
  • 12
27
votes
3 answers

What is CRDT in Distributed Systems?

I am a newbie in Distributed systems and I am trying to get an insight on the concept of CRDT. I realize that it has three notations : Conflict-free Replicated Data Type Convergent Replicated Data Type Commutative Replicated Data Type Can anyone…
fnaticRC ggwp
  • 955
  • 1
  • 11
  • 20
26
votes
2 answers

Confusion about Message Bus / Command Dispatcher patterns

Recently I've been reading a lot about distributed messaging and associated patterns. I used some of them supported by the tools like for exemple NServiceBus. Many of those patterns are described on internet. Some of them I recently read was…
23
votes
3 answers

What is the difference between zookeeper and raft?

this is really dumb but what does zookeeper do that raft doesn't - not talking about zab but zookeeper itself. I get raft does leader election etc. w servers but what's the point of zookeeper? is there an analogy anyone has
21
votes
2 answers

Terminology: Trace ID vs Correlation ID

I am trying to understand the difference between the following terms: Trace ID Correlation ID Both terms seem to be used as an identifier for searching related logs produced by multiple services, especially in a microservices-oriented…
alexpirine
  • 3,023
  • 1
  • 26
  • 41
20
votes
6 answers

Why is 2-phase commit not suitable for a microservices architecture?

I've read a post saying that: We can not implement traditional transaction system like 2 phase commit in micro-services in a distributed environment. I agree completely with this. But it would be great if someone here can explain the exact…
1
2 3
83 84