Балансировка загрузки Web-сервисов с помощью мобильных агентов (начало)

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

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

Структура распределенных веб-сервисов

Рис.1. Структура распределенных веб-сервисов

Для реализации надежных и высокопроизводительных серверов применяют распределенные веб-серверы. Такие веб-серверы представляют собой набор (N-ное количество серверов) веб-серверов. Это продублированы ресурсы для одновременного предоставления услуг многим пользователям. Входящие запросы могут быть распределены между серверами согласно определенных стратегий распределения загрузки, следовательно эти запросы могут быть обработаны в определенных временных рамках (время отклика). Распределенные веб-сервера (рис. 1) могут быть организованы различными способами:

  • они могут быть интегрированы в кластер веб-серверов, соединенных посредством локальной вычислительной сети, чтобы работать как один мощный сервер;
  • так же могут применяться в разнообразных географических местах посредством глобальной вычислительной сети.

Распределенные веб-серверы могут легко расширяться, и имеют высокую степень масштабности. Количество серверов может быть увеличено добавлением нового сервера в локальную сеть.

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

  • Клиентские.
  • Основанные на DNS.
  • Диспетчерские.
  • Серверные.

Клиентский подход балансировки загрузки

Рис.2. Клиентский подход балансировки загрузки

Клиентский подход (рис. 2) использует выбор сервера на стороне клиента. Клиент выбирает один из доступных веб-серверов случайным путем или наиболее подходящий, используя механизм интеллектуального выбора.

Подход, основанный на DNS

Рис. 3. Подход, основанный на DNS

К примеру, браузер Netscape Navigator применяет клиентский подход для доступа к своим сайтам. Когда пользователь заходит на главную страницу Netscape, браузер случайным образом выбирает один сервер и направляет ему запрос пользователя. Однако случайный выбор не всегда может гарантировать балансировку нагрузки всех серверов и доступность выбранного сервера. Интеллектуальный метод выбора сервера может быть реализован с помощью Java апплетов, запущенных на стороне клиента для определения состояния серверов и задержек сети. В таком случае может быть выбран сервер, который наиболее подходит, и запрос пользователя будет направлен именно ему. Недостаток такого метода заключается в большой временной задержке, вызванной определением состояний серверов.

Подход с использованием DNS – это принятие решения на стороне сервера DNS, который обрабатывает запросы по трансляции имен (рис. 3). Чтобы превратить имя, клиент отправляет запрос на DNS-сервер для преобразования имени веб-сервиса на адрес веб-сервера. Он, согласно со стратегией балансировки, выбирает адрес сервера, и отправляет его клиенту. Простейшая стратегия – RoundRobin, а более сложных на включает мониторинг загрузки, учет административных особенностей сети и т.д.

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.