РАЗРАБОТКА СЕТЕВЫХ АГЕНТНО-БАЗИРОВАННЫХ ПРИЛОЖЕНИЙ НА ОСНОВЕ МЕТАКОМПЬЮТЕРНОЙ ТЕХНОЛОГИИ
Актуальность и цели. Несмотря на то, что к настоящему времени были разработаны новые масштабируемые архитектуры для распределенных вычислительных систем, содержащих сотни и тысячи компьютеров, задача создания прозрачного программного обеспечения уровня middleware остается актуальной. Ретроспективная цепочка современных технологий включает облачные, грид- и метакомпьютерные технологии, а также различные варианты коммунальных вычислений. Особый интерес представляет создание метакомпьютерных технологий масштаба Интернета, апробированных при завершении ряда известных исследовательских проектов. Большой и трудно решаемой проблемой при реализации распределенных вычислений остается организация эффективного управления огромным количеством ресурсов, которые доступны в сетевой среде, развернутой на большой площади. Объектом исследования настоящей работы являются метакомпьютерные системы, реализованные на основе глобальных сетей, а предметом исследования - организация управления глобальными вычислительными процессами в сетях на основе метакомпьютерной технологии. Целью исследования является такое совершенствование данной технологии, которое позволит рассматривать сеть с заданной коммуникационной инфраструктурой как единый ресурс с возможной организацией произвольных распределенных алгоритмов. Материалы и методы. Исследования выполнены на основе построения и программной реализации концептуальной модели распределенных вычислений, реализуемой в виртуальной метакомпьютерной среде, являющейся результатом интеграции сетевых, грид и облачных систем с агентно-базированными системами. Результаты. Предложена организация метакомпьютерных агентно-базированных сетевых распределенных вычислений, реализующих основные конструкции распределенного программирования, где сеть рассматривается реально как компьютер с распределенным программным управлением ( message-driven computing ), а не как средство реализации простейших клиент-серверных или master-slave приложений. Модули, или агенты, распределенного приложения способны работать как в реактивном режиме, ожидая прием данных и передачу управления, так и в проактивном режиме, запрашивая данные и управление от предшествующих модулей (агентов). Выводы. Проведенные на сети эксперименты позволили подтвердить работоспособность метакомпьютерного приложения и его способность к масштабированию и расширению функциональных возможностей вплоть до свойств облачно-сетевых технологий AaaS ( Agent as a Service ) и FaaS ( Function as a Service ).