Are major distributed computing frameworks meant only for cloud?
Microsoft HPC, GridGain, digipede and the like are all commercial distributed computing platforms.
They seem to be meant only for managed machines and cloud. Does that mean all machines have to be on LAN ? and how is the cloud computing resources used, are they also only on LAN ? (not webservices ?)
But none of the platform is generic enough to cov开发者_如何学编程er any available machine may be on internet.
As definition "A distributed system consists of multiple autonomous computers that communicate through a computer network in order to achieve a common goal".From this point of view if you have a common interface for message passing among the computers, you can use more than one computer or a computing identity ("node" is used generally for this scope) to accomplish a task. With the common interface I mean a set of standards that can be used for transferring any message,trigger or data set without depending on any hardware or software properties (for example running Operating systems or CPU architecture...) of nodes. A well-known library that has set of standards for message passing is MPI.
After this introduction about distributed computing, it is obvious that there is no obligation to use LAN for connecting nodes...It can be LAN,WLAN or even specialized communication links such as infiniBand.
I am not sure about your second question but let me clarify some points on it.. Distributed computing is mostly but not always used for nodes which has their own computing units and separate local memories (such as RAMs), their existence through the task is not changing and these nodes are totally dedicated to accomplish that task but not more... However, in grid computing, nodes are connected to each other with internet...Their node numbers and contribution of each node are changing! For example, to do some calculation about cancer research, people download an application to their PCs and provide their some of computational power for this calculation..However, for example if that user start to play a HD movie, this contribution vanishes....or even he can close his computer completely..
I am not an expert on cloud systems but my guess is there should be a front-end server that receives the transactions from users and triggers the back-end distributed computing units to compute the transaction and returns the results back to user..I hope more experienced fellows can respond on this subject.
Going to you main question:
Are major distributed computing frameworks meant only for cloud?
No! they are different concepts, but of course they can be used together.
精彩评论