Самоконструируемые приложения, краткий обзор

Принципы самоконструируемых приложений Jetware в иллюстрациях.

  • Краткий обзор Самоконструирующиеся автономные программные системы
  • Принципы 1.Используемые программные компоненты точно соответствуют требованиям приложения 2.Простое автоматическое управление на всем жизненном цикле приложения 3.Работает одинаково везде—в любой операционной системе,на любой платформе и оборудовании
  • Точное соответствие требованиям Программы и библиотеки подбираются в точном соответствии требованиям приложения Сложные комбинации программ Варианты выбора: Программ Форков программ Версий программ Сборок программ с разными опциями или патчами
  • Точное соответствие требованиям Пример вариантов выбора Программ MySQL,PostgreSQL Форков программ MySQL,MariaDB,Percona MySQL Версий программ PHP 5.2,PHP 5.6,PHP 7.0 Сборок программ с разными опциями и патчами MongoDB + RocksDB,Nginx + lua_patches
  • Точное соответствие требованиям Пример сложной комбинации программ Приложение может иметь сочетание очень старых и самых новых версий компонентов,альтернативные варианты сборки и сборки с дополнительными патчами: PHP 5.2 legacy nginx с патчами для lua NodeJS 7.1.0 current MongoDB с поддержкой RocksDB
  • Простое автоматическое управление Сокрытие сложности Разработчик задает главные требования Детали решаются автоматически—самоинтеграция и самоконфигурация Автоматизация всех этапов жизненного цикла Компиляция и сборка,интеграция с окружением,тестирование,деплоймент, обновление Интеграция с управлением распределенными системами Деплоймент,оркестрация,обнаружение сервисов,хранение данных
  • Сокрытие сложности,пример Требования Результат http 8080 Drupal Подключены: Drupal 8, PHP 7fpm,MariaDB,Solr Memcached 6,Java 8,Nginx, Solr Memcached http.port=8080 Drupal настроен для использования Solr и Memcached Nginx обслуживает порт 8080 и настроен для Drupal с php-fpm
  • Автоматизация этапов жизненного цикла Исходный код + библиотеки + требования к окружению Разработчик Компиляция, сборка программы Интеграция с зависимостями Само- Тестирование конструкция Деплоймент на сервер Контейнер или образ VM
  • Интеграция в распределенную систему Интерфейс для системы Оркестрация,обнаружение управления: сервисов Обнаружение сервисов Kubernetes Хранение данных AWS CloudFormation http 8080 Docker Swarm mode Docker Compose var/solr Consul Mesos Marathon var/drupal OpenStack Heat var/mysqld Zookeeper
  • Приложение работает одинаково везде Автономное Несет с собой все требуемые программы и библиотеки Все модули отвязаны от операционной системы Воспроизводимое Самостоятельная интеграция и конфигурация модулей Модули собираются в воспроизводимом окружении Универсальное Работает непосредственно в операционной системе Не требует дополнительных средств изоляции
  • Автономное приложение 1.Несет с собой все требуемые программы и библиотеки 2.Все модули отвязаны от операционной системы Операционная система
  • Воспроизводимое приложение Самостоятельная интеграция Модули собираются в и конфигурация модулей воспроизводимом окружении
  • Универсальное приложение 1.Работает непосредственно в операционной системе 2.Не требует дополнительных средств изоляции Совместимо с «голым металлом»,контейнерами и виртуальными машинами: Установка напрямую в Linux Контейнеры Docker/LXC/rtk/Snappy Образы виртуальных машины VMWare/VBox/KVM/Xen Выделенные серверы и VPS Облака Amazon Web Services,Microsoft Azure,Google Cloud Platform Разработка Vagrant
  • Результат Самоконструируемое автономное приложение 1.Избавление от ручных действие и настроек 2.Низкая сложность установки и эксплуатации 3.Быстрое тестирование,деплой и обновление 4.Качественное стабильное окружение 5.Работает везде и одинаково
Published
2016-09-10