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