Так в чем же разница между распределенным и кластеризованным? - PullRequest
7 голосов
/ 16 апреля 2010

Я слышал эти два термина довольно много раз,

но всегда в замешательстве.

Мое предположение:

  1. для распределенных серверов, каждый сервер имеет свои уникальные данные для обслуживания
  2. для кластерных серверов, каждый сервер должен иметь одинаковые данные при условии достаточного времени для синхронизации

Это разница?

1 Ответ

2 голосов
/ 16 апреля 2010

Я думаю, что сами термины могут неправильно использоваться и семантически пересекаться, но из моего опыта распределенная система - это система, в которой все машины общаются друг с другом; кластер, где машины могут быть независимыми (но не всегда).

Взять, к примеру, MMORPG. Самые сложные и высокопроизводительные архитектуры распределены таким образом, что парень, стоящий рядом с вами и с которым вы разговариваете, фактически подключен к другому физическому серверу. Он работает, когда каждый «сервер симуляции» общается с различными сервисами (такими как сервис «чат», сервис «товар» и т. Д.) Через служебную шину. Это то, что считается распределенной архитектурой - машины работают вместе для достижения одной и той же цели

И наоборот, кластерные серверы могут выполнять свой собственный, отдельный набор работы, полностью независимый от других машин в кластере. Посмотрите на проект SETI, например ... или даже на простой кластер с балансировкой нагрузки ASP.NET ... В обоих случаях эти кластеры выполняют свой собственный независимый набор работы и не общаются друг с другом - они просто выполняют разные задания (SETI) или страницы (ASP.NET) своим клиентам ..

...