Современные тенденции в сайтостроении. Flat CMS
Продолжаем разговор о современных тенденциях в сайтостроении, начало здесь:
🔹Классические CMS
🔹 Wiki-CMS
Flat CMS – плоские CMS составляют популярное и активно развивающееся направление современного сайтостроения. Как следует из их названия – плоские – основная их особенность, это отказ от СУБД и хранение всей информации в файлах.
Для хранения контента используется обычно Markdown, а для конфигурации и шаблонов YAML, TOML, JSON и т.п.
Но сам сайт при этом динамическим, HTML-страницы как таковые не существуют до запроса пользователя, получив такой запрос движок, который написан преимущественно на PHP собирает файлы с контентом, шаблоны, настройки и генерирует запрошенную страницу.
Это позволяет по-прежнему работать с персонализированным контентом, как в классических CMS, но делать это по-новому.
Что принципиально нового в Flat CMS? Это использование для сайта только файлов, что позволяет использовать версионирование Git не только для настроек, но и для контента, а также использовать DevOps практики для развертывания и поддержки сайта.
Фактически здесь мы приходим к модели сайт как код, а использование Markdown для контента позволяет надежно отвязать последний от технической реализации, так как данный формат сегодня стал стандартом де-факто и позволяет свободно переносить контент не только между движками, но и, например, блокнотами и базами знаний (Joplin, Obsidian и т.д.).
Отсутствие СУДБ упрощает администрирование и сопровождение сайта, снижает требования к хостингу и существенно повышает безопасность, так как исключает целый вектор атак на базу данных. А для резервного копирования просто достаточно скопировать файлы.
Появление данного класса CMS пришлось на конец нулевых, а действительно массовое развитие началось примерно около 2015 года, когда стали появляться массовые и недорогие хостинги на SSD.
Именно SSD позволили Flat-CMS вырваться вперед и превзойти по производительности для небольших и средних сайтов классические CMS с СУБД. А появление на рынке NVMe и вовсе позволило взять хороший отрыв.
Но именно то, что обеспечило Flat CMS основные достоинства является и ее основным недостатком – файловая система. Она не масштабируется и на больших объемах контента способна стать причиной резкой деградации производительности.
Данный вопрос можно достаточно эффективно решить при помощи кеширования, но на большом объеме контента это выливается в более высокие требования к памяти и не работает для персонализированного контента.
В общем, идеального решения не бывает, везде есть свои плюсы и минусы. И Flat CMS не исключения, но на современном технологическом уровне плюсов, которые они предоставляют достаточно.
Они просты, безопасны, портативны и прекрасно ложатся в лоно современных практик сайт как код и CI/CD.
Отдельной строкой можно поставить производительность. Если у вас не мегапортал с миллионами записей, то среднего хостинга со средними NVMe дисками хватит надолго, особенно если у вас преимущественно статический контент и грамотно организовано кеширование.
При этом все это будет стильно, модно, молодежно, а сам сайт будет просто лежать у вас в Git-репозитории со всей историей и всеми изменениями.
Кстати, Flat CMS последнее время активно используются вместо Wiki для ведения документации. Потому что проще, понятнее и удобнее, а версионирование обеспечивает Git.
В любом случае, если вы думаете создать новый сайт, то Flat CMS следует уделить самое пристальное внимание. Ведущие проекты, такие как Grav, Kirby или Statamic достаточно развиты, лишены «детских болезней» и имеют полноценную экосистему и сложившиеся сообщества.
Post #5158
2.96K

- 👍 23
- ⚡ 7
- ❤ 2