What is CMS ?
CMS stands for Content management System. CMS helps us to create, manage and publish the content. More Specifically It allows site admin to create, update ,delete and publish the content without any need of any technical capabilities or without any developer. Means suppose for my business requirement I want to create a website It can be static website(Uses Java/PHP/ASP.Net) but to make any changes in these static website we need technical expertise on particular technology and we need to redeploy the website when we will do any changes. And the website will again go to the development and testing phase. Its a time consuming process. As a result if our requirement is to change the content on hourly/daily basis rather than choosing the static websites we should choose the Content Management System. We have number of CMS present in the Market like
- WordPress.
- Drupal.
- Sitecore.
- Contentful.
- AEM and many more.
Need Of CMS?
If our requirement is to change the content of daily/hourly monthly basis than we should go with the CMS . Because in CMS the site admin can change the content and publish the content based on the requirement.
Number of times I went to interview and interviewer asked me a question we have number of CMS available in the market out of those CMS why I should choose AEM and why?
Type Of CMS's Architecture
- Traditional(Coupled ) CMS Architecture.
- De-Coupled CMS Architecture.
- Headless Architecture.
- Hybrid Architecture.
Most of the time we hear about the headless and hybrid CMS Architecture. Let us see some pros and cons of headless and hybrid CMS Architecture.
1.Traditional(Coupled) CMS Architecture.
A coupled CMS is also known as Monolithic and Traditional CMS knits together Frontend and Backend.
- Tight Connection between front-end and back-end.
- Managed through single platform.
- Backend and Frontend in a Single Platform.
- Example WordPress CMS.
Challenge:-The challenge with this Architecture is reusability. We will not be able to reuse the content on different channels because frontend and CMS is bundled together in a single system.
2.De-Coupled CMS
A de-coupled CMS decoupled the frontend and backend in a single system and integrate the frontend and backend through API.
- Front end and CMS decoupled through API in single system.
- Author Manage the content front end consume the content through API.
- Back end + Front end de-coupled in different system.
- Example WordPress/Drupal de-coupled CMS.
3.Headless Architecture
A headless CMS is back-end only content management system built for the ground up as a content repository that makes content accessible via RESTFUL API for display on any device.
- Offer the content for backend storage and management.
- Content as a services(CAAS) API for connecting the backend to any application frontend and transmitting the content to any device.
- CMS has no predefined frontend with standard template for displaying the data.
- Backend+API.
- Example Content stack and Contentful.
- API First Development.
- UI is serrated (Independent of backend ) need to built reusable frontend outside of CMS.
- The content can be exposed by the API and can be consumed by any channel.
4.Hybrid Architecture
A hybrid CMS or Hybrid headless CMS gives you the freedom and APIs of a headless CMS with the marketer friendly functionality of a traditional platform.
- It combines the functionality of traditional and headless CMS.
- It uses out of the box templates to deliver the content to the Web or transmit data to other devices via API.
- The frontend can be separated from backend by an API.
- Backend + API + Frontend.
- Example:-AEM and dotCMS.
- Not API First development.
- In built UI + External UI.
How AEM supports Hybrid Architecture?
OR
Headless/Hybrid Behavior - AEM
Let us understand how AEM supports hybrid architecture.
Experience Manager takes a hybrid approach that offers the best of both worlds. The efficiency and ease of use of a traditional CMS combined with the flexibility and scalability of headless development framework.
- In Headfull CMS the content is stored/managed in the AEM repository and AEM component based on Java, HTL used to render the data on the user experience.
- In a Headless CMS the content is managed in the AEM repository but delivered via API such as REST and GraphQL to another system to render the content for user experience.
- Delivers content either as fully formatted JSON over HTTPS API.
- In the headfull model the content is managed in the AEM repository( Known as JCR). The content is managed in the AEM repository but delivered via the REST API and GraphQL to render the on user experience.
Headless Vs Hybrid
Advantages:
Headless(Body+API)
- In Headless the content managed in a repository and managed via API.
- And Content can be consumed by any channel.
- The main thing is the head(frontend ) should by built externally by consuming the content.
Hybrid:-
Hybrid(Head + Body + API)
- In the hybrid the content is stored in the repository and exposed via the API but at same time it enables the required templates and component to manage the website.
- Mainly the marketing team can manage the website along with the content.
- Again through API the content can be consumed to any channel/frontend technologies.
The selection is based on what we are trying to build. The headless is more scalable , secure for frontend team but at same time the marketing team(Who will do the authoring ) loses the flexibility to manage the website. And on other hand hybrid is more flexible for marketing team but less flexible for the frontend team.
This is my understanding on the Architecture of CMS. Please feel free to give your valuable comments.
No comments:
Post a Comment