CMS와 Headless CMS의 차이를 잘 모르겠어서 관련 글 찾아보고 한번 번역해보면서 정리해봤습니다.
일단 CMS란 ?
'Content Management System'의 약자입니다. CMS는 사용자가 기술적인 지식없이 웹사이트의 컨텐츠를 수정, 관리, 생성을 할 수 있도록 도와주는 소프트웨어입니다. 다른말로는, CMS는 웹사이트를 코드없이 처음부터 빌드할수도 있게 할 수 있습니다.
웹 페이지 생성, 이미지 저장 및 기타 기능을 위한 자체 시스템을 구축하는 대신 CMS에서 기본적인 인프라를 모두 처리하므로 웹사이트의 보다 미래 지향적인 부분에 집중할 수 있습니다.
웹사이트 외에도 문서 관리와 같은 다른 기능을 위한 CMS을 찾을 수도 있습니다.
CMS는 어떻게 동작할까요?
CMS가 어떻게 동작하는지에 대한 감을 잡기위해 워드프레스 인터페이스를 간략하게 살펴보는게 좋을 것 같습니다. 제일 대표적인 CMS라고 하더라구요. 만약 CMS가 없다면 HTML파일을 써서 서버에 업로드를 해야합니다. 워드프레스와 같은 CMS는 사용한다면 마이크로소프트 워드와 같이 생긴 환경에서 컨텐츠를 작성을 하기만 하면됩니다.
마찬가지로 이미지와 같은 미디어를 업로드하고 관리하려면 웹 서버와 직접 상호 작용할 필요 없이 미디어 라이브러리를 가져오기만 하면 됩니다.
Headless CMS란 무엇일까요?
Headless CMS는 콘텐츠가 저장되는 위치(바디)와 콘텐츠가 표시되는 위치(헤드)를 분리하는 콘텐츠 관리 시스템입니다. 정보와 프레젠테이션을 분리합니다. 이를 통해 필요에 따라 웹, 모바일 및 디지털 미디어 플랫폼에서 콘텐츠를 재사용하고 리믹스할 수 있습니다. 심지어 인쇄물에서도 콘텐츠를 재사용할 수 있습니다.
형식에 구애받지 않는 콘텐츠는 작성자, 개발자, 사용자 모두에게 근본적으로 더 나은 경험을 제공합니다.
작성자는 구조화된 데이터 모델을 갖춘 완전한 커스텀 편집기를 사용할 수 있습니다. 개발자들은 기준에 맞는 쿼리 및 필터링 기능을 제공하는데에 더 집중된 API를 갖게됩니다. 그리고 궁극적으로 사용자는 원하는 방식과 장소에서 콘텐츠를 얻을 수 있습니다.
Headless CMS 어떻게 동작할까요 ?
Headless CMS는 콘텐츠 작성 환경과 소프트웨어 개발 환경을 분리하여 편집자에게 콘텐츠 관리를 위한 인터페이스를 제공하고 개발자가 애플리케이션을 쿼리하고 빌드할 수 있도록 API를 통해 해당 콘텐츠를 제공하는 방식으로 작동합니다.
콘텐츠 작성자는 콘텐츠에 집중할 수 있습니다. 개발자는 코드에 집중할 수 있습니다.
이에 비해 기존 CMS는 역할 간의 경계가 모호하여 개발자와 콘텐츠 작성자, 보안 분석가의 역할을 모두 수행해야 합니다. 이는 디너 파티와 마찬가지로 소규모에서는 잘 작동하지만 비즈니스가 성장함에 따라 빠르게 부담스러워질 수 있습니다.
Headless CMS에 저장된 콘텐츠는 개발자가 필요한 곳에 데이터를 표시하는 데 사용할 수 있는 일련의 API를 통해 액세스됩니다.
오늘날 대부분의 Headless CMS는 관리형 백엔드 및 호스팅된 웹 애플리케이션을 제공하는 SaaS(Software as a Service) 회사로 운영됩니다.
전통적인 CMS와 Headless CMS의 어떻게 다를까요 ?
Headless CMS와는 반대로 기존의 CMS는 직접 설치하고 관리하거나 서버 환경에서 관리되어야 했던 소프트웨어입니다. 기존의 CMS들은 모든 기능들과 가정들이 단일 시스템에 포함되어서 있었기 때문에, 'Monolithic'이라고도 불렸습니다.
기존 CMS는 컨텐츠를 표시하는 하나의 컨텍스트 ( 보통 웹 페이지 )만 있기 때문에 "What You See Is What You Get"(WYSIWYG) 컨텐츠 편집 인터페이스를 제공하는 경우가 다분했습니다.
지난 몇 년 동안 콘텐츠를 제공하는 방식에 있어 보다 유연한 방식을 시도하는 CMS가 증가하고 있습니다. 이를 보통 'Headless' 또는 'API -first' CMS라고 부릅니다. 이들 중 일부는 스스로를 "콘텐츠 인프라", "콘텐츠 허브" 또는 "CaaS"로 마케팅합니다.
하지만 자세히 살펴보면 모두 웹 기반 사용자 인터페이스가 있는 데이터베이스 백엔드와 API를 통해 액세스할 수 있는 콘텐츠로 요약됩니다.
Headless CMS vs. Traditional CMS 비교
Headless CMS 이점들
Headless CMS는 강력하고 유연한 콘텐츠 관리 방식입니다. 더 빠른 편집 환경과 여러 채널의 콘텐츠를 관리할 수 있는 기능을 제공합니다. 개발자가 직접 프론트엔드 툴을 선택할 수 있는 유연성을 제공하며 확장도 더 쉽습니다. 또한 Headless CMS는 프레젠테이션 레이어에서 콘텐츠를 분리하여 보안을 강화합니다.
1. 더 빠른 편집 경험
기존 CMS 아키텍처는 콘텐츠 편집과 콘텐츠 렌더링에 리소스를 소비해야 했습니다. 헤드리스 CMS는 렌더링 측면을 처리할 필요가 없기 때문에 기존 대안에 비해 이점이 있습니다.
2. 더 많은 채널에 대한 콘텐츠 관리
진정한 헤드리스 콘텐츠는 웹사이트와 같은 단일 프레젠테이션에 국한되지 않으므로 여러 채널에서 잠재고객을 찾을 수 있습니다. Headless CMS를 사용하여 앱과 웹사이트의 콘텐츠를 관리할 수 있습니다. 내부/관리자 콘텐츠를 같은 위치에서 관리하여 더 많은 가치를 창출할 수도 있습니다.
3. 개발자의 유연성
헤드리스 콘텐츠는 API를 통해 제공되므로 개발자가 직접 프론트엔드 툴을 선택할 수 있습니다. PHP나 Ruby 대신 Javascript로 작업하는 것을 선호한다면 그렇게 할 수 있습니다. 또한 스택의 일부를 교환하거나 CMS에 영향을 주지 않고 한 프레임워크에서 다른 프레임워크로 이동할 수도 있습니다.
4. 손쉬운 확장
헤드리스를 사용하면 단일 소스에서 콘텐츠를 관리하고, 언제든지 개발자 도구를 변경할 수 있고, 고성능 클라우드 기반 호스팅으로 콘텐츠를 전송하고 Vercel 및 Netlify와 같은 빌드 서비스의 이점을 누릴 수 있습니다.
5. 강화된 보안
헤드리스 콘텐츠는 프레젠테이션 레이어에서 분리되어 있기 때문에 공격할 수 있는 영역이 더 작습니다.
https://kinsta.com/knowledgebase/content-management-system/
https://www.sanity.io/headless-cms
'Good to Know' 카테고리의 다른 글
오픈 소스 기여 해보기 ( 리액트 문서 번역 ) (1) | 2023.11.06 |
---|---|
SWR 2.0뭐가 바뀌었을까 ~ ? (1) | 2023.03.25 |
React.lazy랑 @loadable Component 차이 ? (0) | 2023.02.02 |
REST가 뭘까요? (0) | 2023.01.12 |
리액트 - 왜 가상 돔(Virtual Dom)인가 ? (1) | 2023.01.08 |