Архитектура

DC CMS спроектирована в соответствии с современными архитектурными паттернами - это headless и git-based система с API-first подходом.
Изображение статьи

Современная несвязанная архитектура

DC CMS это действительно несвязанная система управления контентом, обеспечивающая динамическую и персонализированную поставку контента. Подобная архитектура сочетает в себе возможности контроля и управления представлением контента монолитных CMS в совокупности с масштабируемостью и гибкостью headless решений.
Изображение статьи

В отличии от многих других CMS систем, называющих себя несвязанными, благодаря отказу от хранения контента в БД и использованию git-based подхода, DC CMS действительно является таковой. Такое решение позволяет создавать абсолютно автономные модули доставки, никак не связанные с модулем разработки.

Модули

DC CMS включает в себя ряд модулей, которые вместе создают комплексное решение для управления контентом.
Изображение статьи

/ Studio предоставляет совокупность сервисов по управлению контентом, позволяющих создавать, изменять и публиковать весь контент.

/ Engine предоставляет услуги поставки контента для любого типа мобильных или веб приложений.

/ Deployer - система развертывания контента, которая перемещает контент из Studio в Engine и обновляет его поисковые индексы.

Уровень модели

На уровне модели находятся различного типа источники данных, поддерживаемых платформой, что позволяет использовать наиболее подходящие инструменты для решения задач проектирования и разработки
Различные базы данных
Различные базы данных

Мы поддерживаем различные реляционные базы данных, например: PostgreSQL и MariaDB. PostgreSQL - это open-source база данных, позволяющая строить высокодоступные решения для чтения/записи и обновления данных. Сервисы авторизации, аутентификации и логирования опираются в свой работе на эту базу данных. Также на основе БД реализуется механизм по контролю за публикацией контента

Поисковая платформа Elastic Search
Поисковая платформа Elastic Search

Это open-source решение для индексации и полнотекстового поиска различных данных. В платформе DC CMS Elastic индексирует и осуществляет поиск по агрегированным данным, таким как имена статических файлов, а также контент страниц и их компонент. Во многом реализация headless API для DC CMS основана на использовании данной поисковой платформы

Уровень бизнес-логики

Платформа DC CMS позволяет реализовать собственный уровень бизнес логики для каждого отдельного проекта за счет использования groovy скриптов, исполняемых на стороне сервера приложения. Доступ к подобным скриптам осуществляется по API, задаваемому разработчиками скриптов и может быть ограничен для сторонних ресурсов

Изображение баннера

Акселератор

Платформа имеет набор встроенных шаблонов сайтов на базе React.js, Vue.js, jQuery и Apache Freemarker Templates, позволяющие продемонстрировать функционал платформы потенциальным клиентам

Изображение баннера

Инфраструктура развертывания

Изображение статьи
/ 1. Браузер, мобильное устройство, приложение и т.д.
/ 2. (Опционально CDN) предоставляет региональное кэширование и HA, WAF решения
/ 3. NGINX с локальным кэшированием, SSL расторжение и базовая защита
/ 4. Собственные облачные сервисы, представленные в Docker образах, могут быть развернуты в k8s или Docker
/  5. Поставлено и развернуто в Docker образах. Хранение, индексация и эксплуатация данных: 1. PostgreSQL, 2. Elastic Search