Европейские исследователи из проекта SELFMAN создали набор
технологий, которые помогают Интернет-приложениям самостоятельно контролировать
свою работу и справляться с возникающими проблемами. Проект SELFMAN разбит на
четыре основных направления – самонастройка, самокорректировка, самолечение и
самозащита приложений.
Как говорит Питер Ван Рой (Peter Van Roy), координатор
проекта, главная проблема при создании крупномасштабных Интернет-приложений
заключается в том, чтобы они могли работать без постоянного внимания
администраторов. Цель проекта заключается в том, чтобы передать большинство
функций по текущему сопровождению крупных приложений самим этим приложениям.
Чтобы настраивать себя самим, приложения должны отслеживать
работу всех своих компонентов, обновлять их при необходимости и проверять
совместимость компонентов между собой. Благодаря системе SELFMAN у каждого
компонента можно запросить такую информацию, как номер версии и перечень других
компонентов, с которыми он взаимодействует. Та часть системы, которая отвечает
за корректировку настроек в соответствии с текущей ситуацией, основана на
алгоритме перераспределения нагрузки. Этот алгоритм помогает выявить
перегрузку, сбои в работе отдельных узлов и другие неполадки.
Одной из самых серьезных проблем для системы SELFMAN стала
самозащита. Участники проекта обнаружили, что самая защищенная система, это не
та, где узлы соединены напрямую, а та, где узлы связываются друг с другом через
несколько промежуточных этапов. В такого рода сетях, которые еще называют
термином «small world» («тесный мир»), технология SELFMAN позволяет быстро
обнаружить аномальное поведение и отключить «плохие» узлы.
Проект SELFMAN – это не просто теоретическая работа, у
проекта есть многообещающие практические результаты. Например, технология
масштабируемого транзакционного хранилища Scalaris
для веб-сервисов Web 2.0 с открытыми исходными текстами завоевала первый приз
на конкурсе IEEE International Scalable Computing Challenge 2008. Система
потоковой передачи видео напрямую между клиентами PeerTV уже
использует технологию SELFMAN для быстрого тестирования и проверки новых P2P-компонентов
(Peer-to-Peer). Также существует демонстрационная версия распределенной
Википедии, способная обрабатывать больше запросов, чем нынешний вариант, а
также графический редактор с поддержкой коллективной работы над макетами.
Подробнее о проекте SELFMAN можно прочитать на официальном
сайте, а также в статье на сайте ReadWriteWeb.
|