Архитектурное описание Archivarius¶
Назначение архитектурного описания¶
Документ фиксирует состав Archivarius, взаимодействие компонентов и внешние интеграции в объеме, достаточном для внедрения, эксплуатации и экспертной проверки.
Контур решения¶
Archivarius является веб-приложением, которое предоставляет интерфейс для работы с видеоархивом и опирается на API и media-выдачу Flussonic.
В минимальном контуре используются:
- сервис Archivarius;
- сервис Flussonic;
- файловое хранилище исходных и подготовленных VOD-материалов;
- веб-браузер пользователя.
Логические компоненты¶
1. Веб-интерфейс (Frontend)¶
- отображает каталог файлов;
- открывает плеер и таймлайн;
- принимает действия пользователя (выбор границ фрагмента, запуск обработки, получение результата).
2. API-слой Archivarius (Backend)¶
- принимает запросы от веб-интерфейса;
- валидирует параметры операций;
- выполняет обращения к Flussonic API;
- формирует ссылки на результат (Preview и Скачать).
3. Интеграционный слой Flussonic¶
- предоставляет API управления файлами и задачами обработки;
- выдает HLS и файловые URL для результатов;
- использует настроенные VOD-префиксы для исходного и подготовленного контента.
Внешние интерфейсы¶
HTTP API Flussonic¶
Archivarius использует API Flussonic для:
- получения списка доступных файлов;
- запуска подготовки фрагмента;
- получения статусов и метаданных;
- формирования ссылок на воспроизведение и скачивание.
Playback URL Flussonic¶
Ссылки на HLS и файл формируются на основе playbackBaseUrl и отображаются в интерфейсе Archivarius.
Потоки данных¶
Основной рабочий поток:
- Пользователь выбирает исходный файл в каталоге.
- Пользователь задает границы фрагмента на таймлайне.
- Archivarius передает параметры операции в Flussonic API.
- Flussonic формирует результат и публикует его в целевом VOD-префиксе.
- Archivarius показывает пользователю результат Preview для проверки границ и содержимого фрагмента.
- После подтверждения выдачи открывается доступ к секции Скачать с итоговым результатом.
Границы ответственности¶
Archivarius отвечает за:
- пользовательский интерфейс;
- оркестрацию сценария подготовки фрагмента;
- корректную передачу параметров в Flussonic.
Flussonic отвечает за:
- медиа-обработку;
- хранение и выдачу VOD-контента;
- API и транспорт воспроизведения.
Точки отказа и устойчивость¶
Критичные зависимости:
- доступность Flussonic API;
- корректность конфигурации префиксов VOD;
- доступность дискового хранилища;
- сетевой доступ между Archivarius и Flussonic.
При недоступности или ошибках внешнего API Archivarius показывает статус ошибки в интерфейсе и не подтверждает переход к выдаче итогового результата.
Безопасность доступа¶
Доступ к API Flussonic выполняется с учетными данными apiUser и apiPassword, заданными в конфигурации Archivarius.
Рекомендуется:
- использовать изолированный контур сети для сервисов;
- ограничивать доступ к API доверенными адресами;
- хранить конфигурационные файлы с правами доступа только для администраторов.