Системы CMS (Content Management Systems) применяются практически повсеместно для организации простого интернет сайта, интернет магазина, корпоративного портала или другого вида интернет представительства. Особенностью их построения является то, что CMS система по сути является отдельным звеном в середине цепочки исполнения запросов, поступающих от клиента к интернет ресурсу. Это означает как затраты вычислительных мощностей на исполнение каждого запроса на определение нужных процедур обработки запроса, подбор шаблонов, исполнение бизнес логики непосредственно вашего приложения, компоновки результатов и элементов шаблона и отправку результатов на браузер посетителя, так и создания потенциального уязвимого звена по соображениям информационной безопасности и производительности.
В классической теории управления контентом помимо описанного выше подхода к организации работы сайта содержатся и альтернативные способы, предполагающие отделение друг от друга функций управления контентом и функций обработки запросов посетителей. Эти функции могут быть разнесены на различные узлы, чтобы повышает производительность каждого из них, снижает риски производительности и информационной безопасности. Однако, в современном глобальном мире многим компаниям уже недостаточно простого интернет сайта. Сайт под давлением рыночных и технологических трендов и бизнес потребностей трансформируется в полноценную информационную систему, к которой необходимо применять лучшие практики проектирования, построения и эксплуатации информационных систем.
Среди таких базовых принципов целесообразно выделить:
- реализация полного цикла по разработке - тестированию - использованию в отдельных независимых средах;
- существенная адаптация решения под ваши нужны, что позволит обеспечить поддержку реализации ваших конкурентных преимуществ;
- поддержка распределённых, масштабируемых и надёжных решений;
- интегрированность в экосистему вашего внутреннего и внешнего информационного пространства для обеспечения непрерывности покрытия ваших процессов автоматизированными решениями;
- единство подходов к автоматизации, хранению информации и структуре информации в ваших подразделениях, родительских и дочерних бизнес структурах.
Традиционные CMS системы в этом плане по причине своей базовой архитектуры в существенной степени проигрывают представленным на рынке корпоративным портальным решениям от ведущих игроков таких как IBM, Oracle или Microsoft. Однако масштабность решений предлагаемых технологическими гигантами делает их по множеству причин не в полной мере подходящими для небольших и средних компаний.
В качестве альтернативного к применению классически CMS систем подхода к построению и управлению интернет проектом мы предлагаем подход, сочетающий в себе черты разных подходов.
Наша технология, которую мы назвали WEHIUS (
https://wehius.com/) представляет собой решение, включающее как элементы, свойственные CMS системам (например, механизмы шаблонов, поддержка множество языков, модульность и другие), так и элементы, свойственные системам, обеспечивающими независимый внешний контроль и управление вашими целевой системой, которой в данном контексте является ваш сайт, портал или магазин.
Ниже представлена таблица сравнения отдельных характеристик двух подходов (*).
Установка на сервер \ Поддерживаемые технологии |
Требуется установка всей системы на каждый из серверов, обычно поддерживается одна серверная технология. Требуется установка постоянных обновлений. |
Установка не требуется вовсе. Система работает централизовано и формирует результирующий код вашего решения на любом количестве ваших серверов на базе единого репозитория |
Механизмы шаблонов |
Реализация поддержки технологии XSLT и аналогичных. Собственный механизм шаблонов. |
Собственный динамически изменяющийся механизм шаблонов, представляющих элементы системы в привычных форматах. Один шаблон одновременно может содержать логику различных технологий и может одновременно применяться для статических решений, решений на PHP, Java, JSP и т.д. Содержание шаблона, включение в него разделов или их исключение может задаваться набором параметров, которые могут быть переопределены для отдельных модулей, проектов, доменов в проекте, языков интерфейса и даже каталогов. |
Поддержка сред разработки, тестирования и работы. |
Обычно каждая копия CMS независимо устанавливается на соответствующие сервера и лицензируется отдельно. Перенос конфигураций выполняется вручную или в некоторых решениях на основе полной выгрузки хранилищ CMS системы |
Поддержка произвольного количества сред не требует отдельной установки. Перенос между средами, генерация и развёртывание на ваши сервера выполняется из единой консоли управления |
Обработка запросов посетителя (пользователя) |
Полный цикл обработки, начиная от анализа запроса и выявления модулей, ответственных за его обработку, загрузка элементов шаблонов, исполнение модулей, наложения данных на элементы шаблон и только затем отправка результата назад |
Единожды формируется результирующий код, который уже интегрирован в шаблон. При поступлении запроса от посетителя отрабатывает исключительно модуль бизнес логики вашего сайта и его результаты без последующей пост обработки отправляются на браузер посетителя. |
Единство информационной модели |
Обычно разрабатываемые модули формируют свои структуры бизнес данных и не интегрируются между собой. Если используемый модуль не удовлетворяет требованиям и необходимо применение иного модуля, то все бизнес данные необходимо самостоятельно переносить из одних структур в другие |
Единая информационная модель обеспечивается за счёт централизованного подхода к публикации модулей для их публичного использования. Однако, это накладывает больше требований к качеству кода модулей, так как они должны корректно обрабатывать данные в информационных объектах, которые записываются в них другими модулями и могут содержать не все значения. |
Кастомизация под ваши нужды |
Обычно кастомизация ограничения объектной моделью CMS системы, которая реализует определённый базовый API |
Ввиду того, что понятие базового API практически не применимо к технологии, то ограничения на разработку или доработку функциональных модулей отсутствуют как таковые. Любая бизнес логика может исполняться на ваших серверах, а связь с самой системой управления ей по сути не требуется. |
(*) Часть функций ещё находится на стадии тестирования.