Questions tagged [distributed]

Multiple computers working together, using a network to communicate

A distributed system consists of multiple autonomous computers that communicate through a . The computers interact with each other in order to achieve a common goal. A computer program that runs in a distributed system is called a distributed program, and distributed programming is the process of writing such programs.

2221 questions
32
votes
12 answers

How to build large applications

I think I've become quite good at the basics of programming (for a variety of languages). I can write a good line of code. I can write a good method. I can write a good class. I can write a good group of classes. I can write good small or…
srmark
  • 7,942
  • 13
  • 63
  • 74
31
votes
1 answer

How scalable is distributed Erlang?

Part A: Erlang has a lot of success stories about running concurrent agents e.g. the millions of simultaneous Facebook chats. That's millions of agents, but of course it's not millions of CPUs across a network. I'm having trouble finding metrics on…
G__
  • 7,003
  • 5
  • 36
  • 54
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
31
votes
5 answers

What are some scenarios for which MPI is a better fit than MapReduce?

As far as I understand, MPI gives me much more control over how exactly different nodes in the cluster will communicate. In MapReduce/Hadoop, each node does some computation, exchanges data with other nodes, and then collates its partition of…
Igor ostrovsky
  • 7,282
  • 2
  • 29
  • 28
28
votes
5 answers

When to use Paxos (real practical use cases)?

Could someone give me a list of real use cases of Paxos. That is real problems that require consensus as part of a bigger problem. Is the following a use case of Paxos? Suppose there are two clients playing poker against each other on a poker…
user782220
  • 10,677
  • 21
  • 72
  • 135
28
votes
1 answer

When do I use a consensus algorithm like Paxos vs using a something like a Vector Clock?

I've been reading a lot about different strategies to guarantee consistency between nodes in distributed systems, but I'm having a bit of trouble figuring out when to use which algorithm. With what kind of system would I use something like a…
Tombert
  • 530
  • 5
  • 13
28
votes
7 answers

Anatomy of a Distributed System in PHP

I've a problem which is giving me some hard time trying to figure it out the ideal solution and, to better explain it, I'm going to expose my scenario here. I've a server that will receive orders from several clients. Each client will submit a…
Alix Axel
  • 151,645
  • 95
  • 393
  • 500
27
votes
3 answers

How does asynchronous training work in distributed Tensorflow?

I've read Distributed Tensorflow Doc, and it mentions that in asynchronous training, each replica of the graph has an independent training loop that executes without coordination. From what I understand, if we use parameter-server with data…
Ruofan Kong
  • 1,060
  • 1
  • 17
  • 34
27
votes
2 answers

What's the difference between distributed hashtable technology and the bitcoin blockchain?

This question could go into a bitcoin forum but I am trying to understand from a programming point of view. There are technologies used for distributed storage, like distributed hashtables (say kademlia or similar). How is the bitcoin blockchain…
transient_loop
  • 5,984
  • 15
  • 58
  • 117
27
votes
5 answers

Can Haskell functions be serialized?

The best way to do it would be to get the representation of the function (if it can be recovered somehow). Binary serialization is preferred for efficiency reasons. I think there is a way to do it in Clean, because it would be impossible to…
26
votes
7 answers

What are some interesting projects to solve in Erlang for learning purposes?

I recently discovered Erlang and am now working my way through a couple of tutorials. By now I'm looking forward to actually implement something as a hobby project. I'm not really interested in yet another chat server. I would like to code something…
Stefan Schmidt
  • 1,152
  • 11
  • 18
26
votes
8 answers

In C#, if 2 processes are reading and writing to the same file, what is the best way to avoid process locking exceptions?

With the following file reading code: using (FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.None)) { using (TextReader tr = new StreamReader(fileStream)) { string fileContents =…
Iain
  • 10,433
  • 16
  • 56
  • 62
26
votes
7 answers

Is Project Darkstar Realistic?

Project Darkstar was the topic of the monthly JavaSIG meeting down at the Google offices in NYC last night. For those that don't know (probably everyone), Project Darkstar is a framework for massively multiplayer online games that attempts to take…
Tim Frey
  • 9,901
  • 9
  • 44
  • 60
25
votes
7 answers

MPI for multicore?

With the recent buzz on multicore programming is anyone exploring the possibilities of using MPI ?