Умная лягушка


SmartFrog ( Smart Framework for Object Groups ) — это платформа с открытым исходным кодом на основе Java , помогающая размещать крупномасштабные приложения в распределенной системе на основе компонентов . Предлагается сделать проектирование, настройку , развертывание и управление распределенными системами более простыми, правильными и автоматизированными. SmartFrog в основном состоит из трех аспектов: языка SmartFrog, системы времени выполнения и библиотеки компонентов SmartFrog, реализующих компонентную модель SmartFrog. [1]

Первоначально SmartFrog был разработан в европейских исследовательских лабораториях Hewlett-Packard . Он использовался в исследованиях HP по автоматизации инфраструктуры и автоматизации обслуживания, а также в различных продуктах HP. [2] SmartFrog стал общедоступным в январе 2004 года по лицензии GNU Lesser General Public License (LGPL) , размещенной на SourceForge . В результате пользователи и разработчики за пределами лаборатории также могут внести свой вклад, используя, расширяя структуру или сообщая об ошибках. [3] В 2017 году, после корпоративного разделения Hewlett-Packard на HP Inc. и Hewlett Packard Enterprise , в то время как Hewlett Packard Enterpriseсобственности, SmartFrog был перелицензирован в соответствии с лицензией Apache License 2.0 . [4]

Язык SmartFrog — это язык описания конфигурации, используемый для описания наборов компонентов и системных конфигураций, например, какие программные компоненты принадлежат системе, каковы параметры конфигурации, как компоненты связаны с другими компонентами в системе и в какой последовательности компоненты Работа.

В SmartFrog компонент является самой важной и базовой частью. Системой считается набор приложений, каждое из которых состоит из набора компонентов. Каждый компонент записывается в файл SmartFrog на Java, который представляет существование и атрибуты компонентов по умолчанию.

Система выполнения интерпретирует описания, написанные на языке SmartFrog, и управляет компонентами на основе результатов интерпретации. Он также предоставляет пользователям инструменты для взаимодействия с компонентами.

Вместо пакета или библиотеки SmartFrog представляет собой структуру, строительный блок, помогающий создавать программные системы. SmartFrog можно расширять, добавляя в фреймворк новые компоненты, а значит, он имеет гораздо более широкое применение и может приобретать новый функционал. [5]