Инфраструктура приложения
Glossary Item Box
С точки зрения инфраструктуры серверов система bpm'omline построена в виде трехзвенного архитектурного решения с определенными модификациями. На рисунке 1 схематически представлена инфраструктура приложения.
Рис. 1. — Инфраструктура приложения
В центре архитектуры находится сервер приложений, который работает под управлением Internet Information Services (IIS) версии 7.0 и выше. На сервере приложений развернуто 2 веб-приложения.
Второе звено архитектуры — классический сервер баз данных. В качестве СУБД может использоваться MS SQL Server 2008 SP3 и выше.
К СВЕДЕНИЮ В облачной инфраструктуре Terrasoft используется MS SQL Server 2012. |
В базе данных хранятся данные, необходимые пользователю, а также данные, необходимые для работы самой системы. Кроме того, в базе данных хранятся все конфигурационные настройки, определяющие функциональность того или иного продукта.
Клиентские рабочие места могут находиться на любом из доступных устройств:
- персональные компьютеры;
- планшетные ПК;
- мобильные устройства.
Все запросы к серверу от клиента выполняются с помощью веб-браузера. Система поддерживает работу с браузерами:
- Internet Explorer 11.0+,
- FireFox (последняя версия),
- Сhrome (последняя версия),
- Safari.
В bpm'online, помимо этих трех основных компонентов трехзвенной архитектуры, присутствуют еще два компонента:
- сервер для хранения сессий (СУБД Redis);
- сервер системы контроля версий.
Сервер хранения сессий Redis
Основными функциями данного компонента архитектуры являются:
- хранение данных сессий пользователя;
- хранение закешированных данных;
- обмен данными между узлами веб-фермы.
Преимущества Redis:
- данные хранятся в оперативной памяти, за счет чего достигается высокая производительность системы;
- сервер может работать под операционной системой Unix.
Сервер системы контроля версий
Это необязательный компонент, который появляется в архитектуре системы только тогда, когда необходимо параллельно с эксплуатацией системы организовать разработку пользовательской конфигурации на платформе.
Его функции:
- Перенос изменений между конфигурациями. Изменения переносятся через пакеты с помощью системы контроля версий.
- Хранение состояний конфигураций в виде пакетов определенной версии. Все, что разрабатывается в пакетах, хранится в системе контроля версий.
Подробнее о сервере системы контроля версий изложено в статье "Как настроить хранилище SVN".
Сервер приложений
Сервер приложений состоит из двух частей:
1. Загрузчик — WebApp Loader.
Его основное назначение — авторизация и аутентификация пользователей и перенаправление их далее в основное приложение.
Отвечает за:
- авторизацию пользователей;
- лицензирование и аутентификацию пользователей;
- запуск планировщика.
2. Конфигурационная часть — WebApp.
После того как входящие запросы были обработаны в загрузчике, они перенаправляются в WebApp.
Конфигурационная часть отвечает за работу бизнес-логики системы. Это приложение, реализующее конкретную конфигурацию, конкретное рабочее пространство в системе.
Таким обазом, для одного приложения bpm'online может существовать одно приложение-загрузчик и несколько основных приложений WebApp, каждое из которых реализует свое рабочее пространство.
На сервере IIS это выглядит так (рис. 2):
Рис. 2. — Структура сервера приложений
Внутри веб-сайта bpm'online находятся несколько приложений с именами в виде чисел от 0 до n. Каждое из них отвечает за определенное рабочее пространство.
Любое приложение bpm'online должно обязательно иметь одно подчиненное приложение с именем 0. Оно соответствует рабочему пространству по умолчанию.
Схемы установки системы
На рисунке 3 представлены две возможные схемы установки приложения bpm'online.
Рис. 3. — Схемы установки
Установка системы без отказоустойчивости предполагает один сервер приложений, один сервер Redis, один сервер баз данных и использование сервера SVN для среды разработки.
Существует возможность установить систему с поддержкой отказоустойчивости:
- использовать несколько балансировщиков нагрузки;
- несколько узлов веб-фермы;
- несколько узлов кластера базы данных;
- несколько узлов кластера Redis.
Для среды разработки можно использовать SVN-сервер, но обычно такие сложные отказоустойчивые системы практикуют только на тестовой и промышленной среде.
Существует 2 варианта установки приложения (рис. 4):
1. On-site.
2. Cloud (облачная установка).
Рис. 4. — Варианты установки приложения
Установка On-site
При установке On-site все затраты, связанные с организацией серверной части (установка, настройка, сопровождение, администрирование), возлагаются на клиента.
Одним из преимуществ такой установки является более простая реализация интеграции с Active directory, посколько обычно контроллер домена находится также в локальной сети предприятия. Кроме того, разработку удобнее выполнять при установке системы локально.
Минусы этой установки заключаются в том, что клиенту необходимо нести постоянные издержки на то, чтобы поддерживать такую инфраструктуру, периодически ее обновлять, исправлять поломки, администрировать и т.д.
Установка Cloud
В режиме Cloud приложение устанавливается на мощностях дата-центров Amazon, находящихся под управлением сотрудников компании Terrasoft. То есть физически вся серверная часть архитектуры и данные находятся в дата-центрах и управляют ими сотрудники Terrasoft. Это означает, что все вопросы, связанные с администрированием, быстродействием, масштабированием решаются силами сотрудников Terrasoft, а клиент использует только клиентскую часть приложения.
Преимущества установки Cloud:
- соответствующее по параметрам оборудование;
- максимально возможное быстродействие;
- промышленные стандарты по доступности и защищенности данных.