Talk:Distributed computing

message: Besides the frequently used PRAM model for parallel computing, I mentioned the LOCAL and CONGEST models which are commonly used in the theoretical community for distributed computing. But I think there should be a separate page listing and defining the most common models and their variants. --Infty1000 0110 (talk) 10:29, 7 August 2018 (UTC)
thread_title: New Page for the Models Used in Distributed Computing Theory

message: I agree with many of the above comments, especially dealing with the level of specificity of the examples.
1 of the most egregeous misstatements in the article is the use of the word "simultaneously" and the subsequent explanation of the relationship between distributed and parallel systems.  A distributed system does not imply any degree of concurrent execution of system subprocesses; indeed applications in an SOA for example - a distributd architecture - mostly execute serially.  1 of the benefits of a distrubuted system (processes not necessarily under the control of a single operating environment or context - i.e., not necessarily symmetric) is the potential for parallelism, but not an implication of it.  As such, the reverse is true of the relationship specified - a parallel system is a type of distributed system or model - although parallelism in and of itself is less a "model" and more of a technique employed (akin to threading in a single component).
And no, theoretcally, distributed computing does not imply physically sepaparate processing contexts (hardware), but the contemporary practical reference frame is that of the Client/Server model in addition to more specialized servers nowadays (the advent of blades, increasing client power, etc.).  I.e., today a client is seen as a PC, a server as a middle tier or database server.  The Cient/Server model - as with the Peer-to-Peer model for example - are examples of distributed computing - the main requirement being components in different address spaces working together toward a common end, not necessarily the implication of the introduction of networks/connectivity.  There's also the difference btw distributed "computing" (higher-level contemplation based on discussion of protocols and cooperation models in general), distributed "systems" (a more static, prescriptive, architecture, although some components may not necessarily cooperate/process distributively or all the time) and distributed "process" (an actual dynamic execution sequence segment within the system where components cooperate distributively).
Another key point is to distinguish btw cooperation and communication - as well as the dual ole of the term "Peer-to-Peer".  For example, distributed components that cooperate/process Client/Server protocol (the client sees only the server, which may become a client itself and turn and face it's own server) actually communicate "Peer-to-Peer" (they speak the same language/are on ewual footing in that regard - not to be confused with "Peer-to-Peer" distributed processing/cooperation).
Will have to come back to this; Hopefully this helps facilitate/spur the needed rewrite of the article.
-- Victor Moran
—Preceding unsigned comment added by 72.189.250.130 (talk) 10:33, 23 January 2009 (UTC)
thread_title: Concurrency, Component Location and Distributed Systems

message: It seems to me that the Architecture part could use some additional information. Also in the that part it looks like client server, 3 tier and n tier are said to be diffrent architectures though I'm currently under the impression that 3 tier and n tier are more like an update to the client server model but basically the same. I found this article on the internet http://www.microsoft.com/belux/msdn/nl/community/columns/hyatt/ntier1.mspx (not sure if posting links is allowed). 
I'm no expert on this area so plz correct me if i'm wrong. I've been working for school on a project with the pages distributed computing, parallel computing, concurrent computing and some others. It seems a couple of IT areas really overlap alot.
I hope this post helps u improve this article.
Best Regards, 
Jip Fransen
Jipfransen (talk) 10:03, 21 January 2009 (UTC)
thread_title: Architecture part

message: I think this a narrow view of the subject.  I feel that "Distributed" means that processing for a task takes place on more than one machine.  This view incorporates classical interpretations of the term as used in Distributed COM (DCOM), for example.  It also is friendlier to interpreting client-server and 3-tier architectures as distributed, which I think they are.
--168.98.178.80, 17:46, 23 Feb 2004
I think this is a too broad view of the subject. Why is there a Multiprocessor systems section? They are not distibuted at all! --84.220.108.55 12:26, 27 August 2005 (UTC)
thread_title: Too specific

message: Does anyone have any data about the effect running distributed computing programs has on component life, energy consumption, etc? --203.26.206.129 03:37, 13 Apr 2004 (UTC)
replies: text: I second! I was going to ask that myself! FireWire (talk) 07:04, 19 March 2008 (UTC)
thread_title: Effects on component life, energy consumption, etc

message: Distributed operating systems are quite different than distributed computing and they deserve an article on their own, IMHO. I will wait for answer for some time and then start such article if nobody will oppose it.Szopen 11:47, 16 Sep 2004 (UTC)
replies: text: I agree, this article doesn't say anything about what a distributed operating system is, yet distributed operating system links to this article. --Abdull 10:04, 5 December 2006 (UTC)
thread_title: Distributing Operating System - separate article?

message: Also, here we use "distributed computing" as a name for whole class of problems, of which
recent fashionable terms like grids etc are just another one incarnation. I think the topic 
deserve a category on its own, and articles on problem such as FLP impossibility result, failure detectors, software distributed shared memory, prediction, etc etc Szopen 12:10, 16 Sep 2004 (UTC)
thread_title: Distributed computing - a category on its own?

message: There is no definition what is 'distributed computing' in this article. In my opinion distributed computing means programs located on physically separated computers which must communicate in some way in order to complete a given computing task.
saer
And what would be the difference between Distributed systems then? Szopen 11:33, 28 Jan 2005 (UTC)
thread_title:  Definition 

message: Distributed computing environment is probably 'See also' page. --Michal Jurosz 13:19, 6 Feb 2005 (UTC)
thread_title:  Distributed computing environment 

message: Just a bit of stuff from the outline that User:raul654 gave. I'm thinking it should go into supercomputers untill i fill it in a bot mroe ... -- Dbroadwell 06:20, 7 Mar 2005 (UTC)
thread_title:  does this go to supercomputers? 

message: As stated by Andrew S. Tanenbaum, "Distributed systems need radically different software than centralized systems do."
:Heh, this quote made me register only to talk about it. Wouldn't that "radically different" thing be because of the way the software is made? If Tanenbaum meant all the kinds of software need to be developed in radically different way than in centralized systems, I'd say he's plain wrong. Take a multilayered model of developing softwares. Higher layers communicate with lower layers with a common language or objects. In that way distributing tasks between computers would be just a matter of distributing more objects. You just need to develop good layers. Well, this is also a model that solves a whole lot more problems that that, but it's just an example. --Renrutal 08:49, 1 Apr 2005 (UTC)
thread_title:  Tanembaum 

message: One of the challenges listed in the Openness section does not seem to be associated with openness. Unbounded nondeterminism is a problem associated with some protocols (most notably contention protocols) and with some levels of unreliability (with high enough reliability the time it takes to complete an operation need not be unbounded). But it does not seem to be related to the publishing of complete and neutral component interface specifications (a reasonable definition of openness). However, I am prepared to be convinced otherwise! Tim Watson 13:01, 10 September 2005 (UTC)
replies: text: Thanks for your comment.  I have clariied the text.  See what you think.--Carl Hewitt 15:57, 10 September 2005 (UTC)
thread_title:  Unbounded nondeterminism misplaced? 

message: I feel that the claim that Web services is the dominant technology is more like a marketing claim for them than truly reflecting the situation, e.g. neither the SETI@home project nor Linux clusters use that technology.
--David Woolley 12:47, 15 October 2005 (UTC)
replies: text: These days everybody is developing Web Services including distributed computing systems on Linux.  Some of the older systems such as SETI do not (yet).--Carl Hewitt 21:08, 15 October 2005 (UTC)
thread_title:  [[Web services]] reference: just a marketing claim? 

message: Especially given that this is a amaster topic for many different sorts of distributed computing, I feel that a fair list of researchers would run into thousands, which would be unreasonable for inclusion in this article.  I feel the current list is somewhat arbitrary, especially as, of the initial four, one isn't present at all, and two others are stub articles, with, in once case, this article being the only substantive referer and in the other case, there being only one other referring article.
--David Woolley 18:18, 26 October 2005 (UTC)
replies: text: I concur.--Carl Hewitt 19:38, 26 October 2005 (UTC)
thread_title:  List of researchers not appropriate 

message: I wrote a new intro and removed the quote from Tanenbaum as it did not contribute anything useful to the topic.  This article is in dismal shape.  Types of processors should not be included such as SISD, SIMD, MISD, MIMD.  If you want to mention this, you could mention the types of systems that can be used in distributed networks and how smaller parallel computers and even clusters can be connected together to make a distributed environment.  But as it is now, it doesn't belong.
The Goal section is ambiguous.  The last line about web services is out of place.  Why should we point that out versus other software technologies?  Move it to the section just below it about examples.
The Openness section seems like it's taken from a specific product with someone pushing it.  Just an impression mind you.
Multiprocessor section doesn't add anything useful.  It's off-topic and doesn't belong here.  The following section is ok though about multicomputer systems and should maybe highlighted or expanded.
The architechture and concurrency section seems good to me as well, but there's something about the formatting that is not appealing.
--Budd (Anon) Feb 17, 2006
:I agree with much of what you say about the article in general but the new introduction is too wordy and too specific. The previous intro described distributed computing as the coordinated use of physically separate computers. This seems to be a very good definition. Distributed computing includes any coherent system that uses a network of computers, the computers don't have to be remote, the protocols don't have to apply to a range of hardware and the code and information doesn't have to be portable. What ties the subject together is the common set of problems and techniques: communication between components, managing state, naming and locating, synchronisation, fault tolerance etc.. These topics apply just as well to a vehicle performance management system as they do to SETI@home or a CORBA-based distributed system for business. Tim Watson 07:29, 18 February 2006 (UTC)
thread_title:  Cleanup Intro 

message: I am interested in helping to add a section on "Problems in Distributed Computing" such as "consensus," "mutual exclusion," "leader election," "dining philosophers" and so on--essentially, the classic problems studied researchers in distributed algorithms. These are precisly-defined problems in the literature, which have a variety of solutions (or lack them!) depending on the specific model of distributed computing that is chosen.
Trying a few, "dining philosophers" is the only one of these which already has a page on wikipedia.
Possibly each problem could merit its own page; or perhaps it would be better to collect them all on a page called "Problems in Distributed Computing."
Looking for similar collections for hints how to organize this, I see that there is a "List of complexity classes." A "List of Problems in Distributed Computing" could be considered to have a similar breadth and depth. There is a "List of NP-complete problems," but apparently no other list of sequential algorithmic problems.
Do others agree that this content merits a "List" of pages? Or should it be localized on one page for now?
I can write some content for this collection, but I'm by no means an expert. I hope others will be interested in contributing.
Is this a good idea? Any suggestions? Ezrakilty 18:29, 30 March 2006 (UTC)
replies: text: A new single section that summarizes and then links to the separate pages on each of those algorithmic problems seems like a good idea. -- Bovineone 18:33, 30 March 2006 (UTC)
thread_title:  A "List of Problems in Distributed Computing" 

message: There have been a lot of lists of links created in both the Distributed computing and Grid computing articles.  I originally added the  because those lists were beginning to over-power the main content of the articles.  Perhaps some of them can be moved to new articles so that people will be encouraged to add them there instead of in the main articles?  Although this may be bordering on what wikipedia is not, it may still be possible to create a "List of distributed computing journals" and "List of distributed computing organizations" or a "List of distributed computing software" to complement the existing List of distributed computing publications and List of distributed computing projects? -- Bovineone 17:57, 15 May 2006 (UTC)
replies: text: Perhaps we could just link to the dmoz directories of distributed computing journals, conferences, projects, and general distributed computing links. The List of distributed computing projects primarily lists projects about which there is a Wikipedia entry. This (kind of) makes sense, since the Wikipedia links won't appear in something like dmoz. But assembling a list of purely external links seems like it would be contrary to what wikipedia is not. Wikipedia is not a directory. Dmoz is a directory, so why not make use of it? --Allan McInnes (talk) 18:52, 15 May 2006 (UTC)
thread_title:  Spammy lists 

message: How is this different? --M1ss1ontomars2k4 | T | C | @ 00:11, 22 May 2006 (UTC)
replies: text: Distributed computing in general is just computation using multiple computers (possibly even dedicated clusters that do not need to "share" their use with other workloads).  Shared computing is a subset of distributed computing where cycle stealing or idle cycles only are used, usually by people volunteering their PCs. -- Bovineone 04:56, 22 May 2006 (UTC)
thread_title:  Shared computing 

message: See the discussion in Distributed programming. I think the two articles should be merged. Hervegirod 09:29, 2 September 2006 (UTC)
thread_title:  Merge proposal 

message: Communicating_Sequential_Processes is the more cited "abstract model" for concurrence on Distr. Comp.   CSP not cited on the article!
... Web Service Architecture (see on W3C) is the "top model" today, and it not have a section on the article.
—The preceding unsigned comment was added by 201.43.55.80 (talk • contribs) .
:If you feel there should be more discussions of CSP and WSA then by all means add them (with references please). Wikipedia is open to everyone for editing. --Allan McInnes (talk) 04:05, 26 October 2006 (UTC)
thread_title:  Where the CSP and web-service models?? 

message: distributed commuting?--Renice 16:48, 4 January 2007 (UTC)
thread_title:  Other examples... ? 

message: The article first states that the World Wide Web is not a distributed computing system, then at the end of the article that it is one example of distributed computing system. --Edcolins 10:33, 21 January 2007 (UTC)
replies: text: At the end it says "An example of a distributed system is the World Wide Web". A distributed system is not the same as distributed computing. The article could make a clearer distinction and have a section titled "Distributed systems". Or maybe Distributed system should get its own article again  instead of redirecting here. PrimeHunter 16:49, 22 January 2007 (UTC)
replies: text: I made a quick fix  to avoid readers thinking there is a contradiction, but distributed systems should be introduced better. PrimeHunter 16:58, 22 January 2007 (UTC)
replies: text: I agree that the article confuses what is sometimes called Distributed Systems and what is sometimes called Distributed Computing.  Having a "Distributed Systems" section is not right; it should be the other way around since distributed computing is more specific than distributed systems.  Or as you suggest they should be split into separate articles. --Nethgirb 23:51, 22 January 2007 (UTC)
replies: text: I think an article can have a section for a more general concept, e.g. if the specific article concept is more known/notable than the general, but I'm not judging this case, and I don't expect to work on it. PrimeHunter 13:19, 23 January 2007 (UTC)
thread_title:  Contradiction 

message: If you want drawbacks, I've got tons.  Someone will have to search for references though.  So I'll just list them here.
* Reliability.  There is no guarantee that communication will arrive at another node in a timely fashion.  You can't even be sure that something happened at all.  This is a common problem.  TCP/IP must deal with this too.
* Security.  Because all nodes usually use a public network for communication, there is the risk of attempted unauthorized access.
* Multiple Platforms.  Althought there is no requirement for multiple platforms in general, there are many applications that require it such as web browsing.  Getting all platforms to have its respective version of the software takes a lot of work.  Getting them all to give the proper results is even more problematic.  Then there's maintaining all those different versions of the software.
* Coordination.  All distributed environments must be coordinated.  Much like a workplace, you can't have everyone in one big room haphazardly running around.  Everyone must have its task.  Same goes for nodes in a distributed environment.  There needs to be a way to identify nodes, add nodes, remove them, and change what task they are doing all while distributed computing is going on.
* Protocol.  From within a programming language, you can send data using language features such as objects, structures or messages.  In a distributed environment, everything you send to other nodes must be formatted in a way that the receiving end can make out what it is.  In short, everything that goes out on the wire must be made similar to being persistant.  But instead of saving and loading from disk, it is sent out and received through the communication channel.
There's a lot more, but those are the main ones. —The preceding unsigned comment was added by 142.167.85.107 (talk) 07:33, 16 February 2007 (UTC)
thread_title:  Drawbacks 

message: The long paragraph under "Drawbacks and Disadvantages" that begins, "Distributed computing projects may generate data that is proprietary to private industry" is actually referring, I think, to the phenomenon of [Volunteer computing] which is a specific use of distributed computing that harnesses the computing resources of volunteers, and which already has its own page. The comments in that paragraph do not apply to distributed computing as such, which is a technical subject and which need not (and often does not) have any of the proprietary questions that the paragraph raises.
I propose that this paragraph be moved to a "Drawbacks and Disadvantages" section on the Volunteer computing page. Perhaps explicit mention of the relationship between the two topics should be made on the Distributed computing page.
I notice that in some other ways, the notion of volunteer computing is being confused with distributed computing here. For example, the intro mentions BOINC, a framework for building volunteer-computing systems, as an example of distributed computing, without mentioning the special nature of projects such as BOINC. Also, the "Examples" section describes only large-scale volunteer computing projects. Although it does say that "many are run on a volunteer basis" it gives the impression that all or almost all distributed computation is  of this sort, which is not true.
I can try to flesh out the "Examples" section and otherwise clarify this distinction. Ezrakilty 11:17, 4 July 2007 (UTC)
thread_title:  Volunteer Computing 

message: Can any one give real time instance of distirbuted system? Regards, Balaji.K.srinivas  —Preceding unsigned comment added by KJBalaji (talk • contribs) 00:47, 13 September 2007 (UTC)
replies: text: Just read the article and look at the recommended sites. --Statsone 04:46, 13 September 2007 (UTC)
thread_title:  Quite confuse on distirbuted system 

message: I am quite confused by definition of "space-bsaed" computing. I was teached that tuple spaces are just one of example of distributed shared memory paradigm. Can someone explain, why space-based is different from distributed shared memory and why space-based is used here instead of DSM? 
Szopen (talk) 13:11, 17 April 2008 (UTC)
thread_title:  DSM vs Space-based 

message: what is meant by distributed computing ?  —Preceding unsigned comment added by 210.212.172.98 (talk) 11:37, 28 February 2009 (UTC)
thread_title:  distrbuted computind 

message: I think that this article fails to give a coherent view of the broad field of distributed computing. I like the lead paragraphs, but the rest of the article seems to present somewhat random pieces of information in no particular order. A lot of emphasis is on software engineering aspects and on some fairly specific applications; the theoretical foundations of the field are not covered at all. I wonder if we could try to use a roughly similar structure as what we have in Parallel computing? In practice, it might be something like the following:
# Background, including the theoretical foundations of the field. Here we would refer to articles such as Distributed algorithms, Fault-tolerance, Consensus (computer science), etc. List of important publications in computer science#Distributed computing and Dijkstra Prize might give some more ideas, as well as textbooks such as Lynch: Distributed Algorithms, and CFPs like  . Topics such as Routing and Broadcasting (computing) might be relevant as well. We can also discuss in more detail how distributed computing is related to parallel computing, concurrent computing, computer networks, etc.
# Hardware. Here we might refer to articles such as Computer networks, Cluster computing, Grid computing, etc.
# Software. Here we would cover issues related to software architectures, software engineering, programming languages, etc. Fallacies of Distributed Computing would belong here, too.
# Applications. Here we would refer to List of distributed computing projects. But we could mention many other applications, too. Some random examples of distributed systems (with non-trivial computational challenges) that we might mention include Internet, Peer-to-peer network, Cellular network, and Wireless sensor network.
# History. History of computing, History of the Internet, etc. might be good places to start. Perhaps we could also pick some prominent people from :Category:Researchers in distributed computing and describe their work.
What do you think? — Miym (talk) 19:42, 5 July 2009 (UTC)
replies: text: You refer to Peer-to-peer network but currently that is a redirect to Peer-to-peer, which is an article about ... something unclear.  Witness the constant rewriting of its lead and proposals on Talk:Peer-to-peer to move the article to a more descriptive title so that a disambiguation page can occupy the name.  You may find relevant content in other articles listed on Peer-to-peer (disambiguation). --Una Smith (talk) 02:31, 9 July 2009 (UTC)
thread_title:  Structure and missing topics 

message: This article is in desperate need of at least a mention of supercomputers. A comparison of pros and cons would be sweet, ditto ecological and economical aspects. --193.166.137.75 (talk) 09:04, 21 July 2009 (UTC)
thread_title: supercomputers

message: The SOA article seems to say that "older" DC was SOA's precursor.  In messaging?  Then it goes on to blather about Web 2.0 with no regard for corporate entities and breezes over security in SOA.
What company using Oracle SOA ever used DC ?
G. Robert Shiplett 13:03, 8 June 2011 (UTC)
thread_title:  SOA article 

message: The Oz programming language is moving to be a DC language.  There had been HP Distributed Smalltalk for CORBA messaging but Smalltalk was not a language for distributed programming.  Which languages were and where were they used with a commercial success?
G. Robert Shiplett 13:07, 8 June 2011 (UTC)
thread_title:  DC programming languages 

message: If there's a program running on one computer talking to a program running on a different computer (e.g. ping), is this distributed computing?
If there are many clients running on different computers all talking to one server (e.g. FTP), is this distributed computing?
If there are many clients running on different computers all talking to one server at a time but switching between different servers (e.g. WWW), is this distributed computing?
Is there any case where the client-server architecture on its own (e.g. not including "n-tier", load balancing, parallel processing or any other "more complex than just client-server" scheme) constitutes distributed computing?
In my opinion, a client-server architecture does not constitute distributed computing and should be removed from the list of architectures.
BrendanTrotter (talk) 06:42, 31 January 2013 (UTC)
thread_title:  Client-Server Architecture 

message: Why does the first sentence of the Introduction contain the word gay?
The word distributed in terms such as "distributed system", "distributed programming", and "distributed algorithm" originally referred to computer networks where individual computers were physically gay distributed within some geographical area.  — Preceding unsigned comment added by 129.59.79.147 (talk) 19:11, 12 December 2014 (UTC)
thread_title:  Why does the first sentence of the Introduction contain the word gay? 

message: I think distributed system is a more appropriate choice for the main article. The first two sentences make it clear why: "distributed computing" is currently defined in terms of "distributed system", not the other way around!
If the consensus agrees, I will make a move request. Caleb Stanford (talk) 06:37, 2 December 2022 (UTC)
replies: text: @Caleb Stanford I had the same thought; distributed computing refers to using distributed systems to solve computational problems. -- Nczempin (talk) 10:32, 1 January 2023 (UTC)

text: So since the discussion was closed, maybe we should improve the article on distributed computing, maybe incorporate the acm viewpoint and make the distinction between distributed systems and [the two meanings of, or should the second be "d. computation"?]  d.c. clearer? -- Nczempin (talk) 12:55, 11 January 2023 (UTC)
thread_title:  move page to [[distributed system]] 

message: :The following is a closed discussion of a requested move. Please do not modify it. Subsequent comments should be made in a new section on the talk page. Editors desiring to contest the closing decision should consider a move review after discussing it on the closer's talk page. No further edits should be made to this discussion. 
The result of the move request was: no consensus. Minimal participation. (non-admin closure) NasssaNsertalk 09:01, 7 January 2023 (UTC)
replies: text: Distributed computing →  – "Distributed system" is a better choice for the main article and more consistent with modern usage. The first two sentences make it clear why: "distributed computing" is currently defined in terms of "distributed system", not the other way around! Caleb Stanford (talk) 19:05, 8 December 2022 (UTC)

text: @Caleb Stanford Distributed computing refers to the use of distributed systems to perform computational tasks. It involves dividing a computational problem into smaller tasks, which can be solved concurrently by multiple computers that communicate with each other over a network. I would say that is how the term is primarily used in the field. However, distributed computing could also be interpreted as "doing anything with computers that is distributed". however in cs courses the subject is usually called distributed systems. that said, the ACM, in its CS curriculum guidelines, has introduced a piece of the "body of knowledge" called "Parallel and Distributed Computing" and put Distributed Systems under it (but has not provided a term that combines P&D). So perhaps the field that concentrates on CPU bound topics should be "distributed computation"? -- Nczempin (talk) 11:45, 1 January 2023 (UTC)
thread_title:  Requested move 8 December 2022