Как управлять балансировкой нагрузки

Существует 10 серверов определенной организации . Придумайте какой-нибудь алгоритм балансировки нагрузки. Также рассмотрим случай, когда одному из серверов требуется 10 секунд для обработки запроса, а другому — всего 1 секунду. Итак, как вы справитесь с этим узким местом?


person L.ppt    schedule 24.07.2012    source источник
comment
Я заметил тег интервью-вопросов. Вам нужно предоставить точное решение проблемы, или это просто вопрос для оценки логических и логических способностей?   -  person Máté Gelei    schedule 24.07.2012
comment
Я думаю, это было для оценки логических навыков, но я хочу знать о практической ситуации.   -  person L.ppt    schedule 24.07.2012


Ответы (2)


Есть несколько способов сделать это, но одним из лучших является БАЛАНСИРОВКА НАГРУЗКИ ПО СТОИМОСТИ. В этом типе балансировки мы назначаем стоимость каждому соединению от клиента к серверу на основе distance между ними, политик подсетей между ними, среды передачи данных между ними и т. д., и после этого мы пытаемся переместить/ направьте соединения на тот сервер, который дает общую минимальную стоимость соединений.

person Hack Daniels    schedule 24.07.2012
comment
конечно, traffic на сервере также является одним из наиболее важных факторов, определяющих стоимость соединений. - person Hack Daniels; 24.07.2012
comment
Поскольку вопрос предоставляет только 2 параметра с точки зрения времени обработки, я не уверен, что этот ответ является ожидаемым даже в практическом смысле. - person grdvnl; 24.07.2012

Может быть простое решение: из каждых 10 задач назначьте 1-ю на сервер, который занимает 10 секунд. Следующие 9 задач отправляются на сервер, что занимает 1 секунду.

Конечно, здесь я предполагаю, что задачи поступают с интервалом в 1 секунду в качестве предположения. С этим предположением и описанным выше подходом оба сервера используются полностью.

person grdvnl    schedule 24.07.2012