我应该为这个项目使用什么?集群、网格还是分布式计算?

What should I use for this project? Cluster, grid or distributed computing?

我有一个项目,我正在执行用 Java 编写的彼此独立的单个任务,并通过 LAN 在计算机上执行任务以有效地解决任务。如果任务是线程安全的,它们将作为线程执行,否则作为新的 JVM(在原始计算机上确定)并将结果发送回原始计算机以进行输出。

我用谷歌搜索了这个主题,但一直对网格、集群和分布式计算感到困惑。在上述场景中,如果有的话,我应该使用哪个?

应该注意局域网上的计算机是 运行ning Windows 7 意味着无论我找到什么解决方案,都需要 运行 on Windows(一些解决方案可能仅限 *nix)。

我明白这让你对你提到的三个词感到困惑,但它们不能相互比较,让我解释一下原因;

维基百科:

Cluster: A computer cluster consists of a set of loosely or tightly connected computers that work together so that, in many respects, they can be viewed as a single system

Grid: Grid computing is the collection of computer resources from multiple locations to reach a common goal.

Distributed Computing: Distributed computing is a field of computer science that studies distributed systems. A distributed system is a software system in which components located on networked computers communicate and coordinate their actions by passing messages.

  1. 所以集群基本上是(在网络或软件层)许多计算机作为一个。
  2. 网格(计算)使用集群来执行任务。
  3. 分布式计算是执行任务的一种方式。

现在您需要的是使用 Hadoop 或 Apache Spark 来完成此类任务,或者使用任何内存中的 DataGrid 来完成此类任务,但这可能有点矫枉过正,除非您能说出自己到底在做什么。