那么分布式和集群式的区别是什么?

时间:2022-07-21 13:24:21

I've heard these two terms quite many times,

我听过很多次这两个词,

but always confused.

但总是困惑。

My guess:

我猜:

  1. for distributed servers,each server has its own unique data to serve
  2. 对于分布式服务器,每个服务器都有自己唯一的服务数据
  3. for clustered servers,each server is supposed to have the same data given enough time to synchronize
  4. 对于群集服务器,每个服务器应该具有相同的数据,给予足够的时间进行同步

Is that the difference?

这有区别吗?

1 个解决方案

#1


2  

I think the terms themselves might get misused and semantically have overlap, but from my experience, a distributed system is one where all the machines talk to eachother; a cluster is where the machines may be indepedent (but not always).

我认为这些术语本身可能会被滥用并且在语义上会有重叠,但根据我的经验,分布式系统是所有机器彼此交谈的系统;集群是机器可以独立的地方(但并非总是如此)。

Take for example a MMORPG. The most complex and highest end architectures are distributed in a way, that the guy standing next to you and that you are talking to, is actually connected to a different physical server. It works by having each 'simulation server' talking to different services (like a 'chat' service, a 'trade item' service,..) via a service bus. This is what is considered distributed architecture - the machines are working togeather to accomplish the same goal

以MMORPG为例。最复杂和最高端的体系结构以某种方式分布,站在您旁边并且您正在与之交谈的人实际上是连接到不同的物理服务器。它的工作原理是让每个“模拟服务器”通过服务总线与不同的服务(如“聊天”服务,“交易项目”服务......)交谈。这就是被认为是分布式架构 - 机器正在努力实现同样的目标

Conversely, clustered servers might do their own, distinct set of work completely independent of other machines in the cluster. Look at the SETI project for example... or even a simple ASP.NET load balanced cluster... In both cases, these clusters are doing their own independent set of work and not communicating with eachother - they are just serving up different jobs (SETI) or pages (ASP.NET) to their clients..

相反,群集服务器可以完全独立于群集中的其他计算机执行各自独立的工作。以SETI项目为例......甚至是一个简单的ASP.NET负载平衡集群......在这两种情况下,这些集群都在做自己独立的工作而不是互相通信 - 它们只是提供不同的工作(SETI)或页面(ASP.NET)给他们的客户..

#1


2  

I think the terms themselves might get misused and semantically have overlap, but from my experience, a distributed system is one where all the machines talk to eachother; a cluster is where the machines may be indepedent (but not always).

我认为这些术语本身可能会被滥用并且在语义上会有重叠,但根据我的经验,分布式系统是所有机器彼此交谈的系统;集群是机器可以独立的地方(但并非总是如此)。

Take for example a MMORPG. The most complex and highest end architectures are distributed in a way, that the guy standing next to you and that you are talking to, is actually connected to a different physical server. It works by having each 'simulation server' talking to different services (like a 'chat' service, a 'trade item' service,..) via a service bus. This is what is considered distributed architecture - the machines are working togeather to accomplish the same goal

以MMORPG为例。最复杂和最高端的体系结构以某种方式分布,站在您旁边并且您正在与之交谈的人实际上是连接到不同的物理服务器。它的工作原理是让每个“模拟服务器”通过服务总线与不同的服务(如“聊天”服务,“交易项目”服务......)交谈。这就是被认为是分布式架构 - 机器正在努力实现同样的目标

Conversely, clustered servers might do their own, distinct set of work completely independent of other machines in the cluster. Look at the SETI project for example... or even a simple ASP.NET load balanced cluster... In both cases, these clusters are doing their own independent set of work and not communicating with eachother - they are just serving up different jobs (SETI) or pages (ASP.NET) to their clients..

相反,群集服务器可以完全独立于群集中的其他计算机执行各自独立的工作。以SETI项目为例......甚至是一个简单的ASP.NET负载平衡集群......在这两种情况下,这些集群都在做自己独立的工作而不是互相通信 - 它们只是提供不同的工作(SETI)或页面(ASP.NET)给他们的客户..