Мнение наивного способа реализации обмена нагрузкой для сервера на стороне клиента

StackOverflow https://stackoverflow.com/questions/2206683

  •  18-09-2019
  •  | 
  •  

Вопрос

Я думал о обмене клиентами для сервера, который может быть выполнен по выполнению клиента с практически без помощи от End Severs, и придумал это -

Простите меня, если это звучит глупо, бу вот -я иду -

  1. У сервера есть таблица, в которой хранится поля имен серверов, IP -адресов сервера и соответствующие IP -адреса Mac ID (да, это очень ориентированный на Windows подход)
  2. Каждый раз, когда клиент входит в систему на основной сервер, он отправляет запрос на сервер, который возвращает IP -адрес всех записей сервера ASN, а их соответствующие идентификаторы MAC он имеет в своей таблице (я предполагаю, что на одном сервере есть несколько копий Rsynced)
  3. Затем клиент реализует трассу для каждого из этих IP -адресов и хранит их в массиве в порядке увеличения Hopcount.
  4. Итерация через этот массив и реализуйте ARP для разрешения IP -адресов в Mac ID. Затем сравните эти идентификаторы Mac с теми, которые извлекаются с основного сервера на шаге 1. Если есть совпадение, то выбор сервера для подключения, основан на количестве подсчетов HOP+ совпадение идентификаторов Mac+ метрика, которая означает нагрузку (количество Соединения с этим сервером в этот момент времени).

Мнения о том, как звучит эта идея, приветствуются.

Это было полезно?

Решение

Я не думаю, что совместное использование нагрузки может основываться исключительно на подсчете хопа. И зачем вам нужны MAC -адреса? Если один сервер быстро достигнут, но могущественный, он может быть не лучшим выбором. Возможно, вы могли бы добавить службу на основной сервер, чтобы отслеживать количество клиентов для каждого сервера и использовать его в качестве критерия ... но это звучит очень похоже на старое, простое и простое балансирование нагрузки.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top