Информационные системы - статьи




Дисциплины с распределителями нагрузки - часть 7


В одной из работ авторы SITA-E предложили алгоритм TAGS (Task Assignment Based on Guessing Size), хорошо работающий для потоков заявок с большой дисперсией и неизвестной заранее длиной заявки, которая определяется динамически. Сначала она поступает на обслуживание на первый сервер. Если s1 единиц времени оказалось недостаточно для завершения обслуживания, процесс прерывается, и заявка ставится в очередь ко второму серверу, где ее обслуживание начинается с начала и т.д. TAGS, таким образом, достигает приблизительно тех же целей, что и SITA-E, но без априорной информации о длине заявки. Для реализации этой дисциплины не требуется анализа HTTP-заголовка и наличия распределителя нагрузки. Однако непонятно, сколько необходимо серверов, чтобы снизить среднее замедление до заданного уровня. Неясно и то, как оптимально выбрать последовательности si.

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

В другом исследовании предложена дисциплина MC-RR (Multi Class Round Robbin) для устройств уровня 7. Ее цель лучшить разделение нагрузки для Web-кластеров, выполняющих статические и динамические запросы. Все возможные запросы разделены по ожидаемому влиянию на сеть, процессор и диск: статические и егкиеинамические; с высокой нагрузкой на диск; с высокой нагрузкой на процессор; с высокой нагрузкой на диск и процессор. Заявки первого класса характерны для систем Web-публикаций, остальные ля обработки Web-транзакций и мультимедийных Web-приложений. Внутри каждого класса заявки обслуживаются согласно дисциплине RR. Основная идея алгоритма состоит в том, что распределитель нагрузки хотя и не может точно вычислить длину заявки, но может определить ее класс.


Содержание  Назад  Вперед