March 16, 2020
Estimated Post Reading Time ~

What is Adobe Experience Manager (AEM/ Adobe CQ5) ?



What is Adobe Experience Manager?
In This Adobe Experience Manager tutorial, you will learn about the basics of AEM, What actually AEM is. This AEM tutorial, we will also focus on, why Aem is best for the Content management system (CSM). And also in this Aem tutorial, you will get the basic knowledge about its modules and frameworks used to manage and what is the role of frameworks.
This aem tutorial provides you almost all knowledge about aem which is enough to start working with AEM.
So, let’s start

What is Adobe Experience Manager?
Adobe Experience Manager (AEM), is a java based content management system, It was initially developed by a Swiss company named Day Software. Previously AEM is known as Day CQ5, but in 2010 it was acquired by Adobe. AEM is totally a java based content management system. AEM is based on a java content repository (JCR).

In AEM Repository (which is an implementation of jcr called CRXDE Lite).In which everything is stored as content because AEM is totally based on JCR and access the content in that repository. So finally AEM is the java based Content management system (CSM).

Why Adobe Experience Manager?
Because it simplifies the content-oriented website management and delivery of the website’s content, assets, and also reduces the complexity of delivering online experiences to the right customers.
AEM is itself working in modules. It has Five Modules namely Sites, Assets, Mobile, Forms, and Communities. And all these modules provide a great, simple and comprehensive content management solution to developing and managing the content-oriented websites, mobile apps and forms to manage and targeting your marketing content and assets more easily.
AEM uses the Frameworks named Apache Sling framework, OSGI framework, JackRabbit. The combination of Apache Jackrabbit, Apache Sling, and Apache Felix allows you to build web applications. AEM Architecture contains all these frame frameworks in a single stack.

Now let us concentrate on these technologies separately :
Apache Jackrabbit

It is known as the reference implementation of the JCR API. The JCR API is used to manage content repositories i.e., web content. And a content repository is a mix of database and file system. JCR API is basically made to deal with web content. And we cannot use relational database over JCR API because URLs are hierarchical and relational databases don’t easily support hierarchical access. And we cannot even use File System instead JCR API as JCR supports transactions, versioning and lot of other features that file system doesn’t support.

Apache Sling
It is a web framework that is based on JCR API and it takes advantage of features provided by JCR API.

Apache Felix
It is an OSGi container. It allows components of a web application to seamlessly start, stop and replace while the server is running. It means here is that you can change the application without having to restart the server.
Adobe Experience Manager versions
A list of aem versions has come in the market with their modifications and latest updates. the first version was Day CQ 1.0 came in Early 2000 and now AEM 6.5 has come. But Most of the firms still working on AEM 6.5.

AEM Architecture


AEM Architecture
Here will learn about AEM Architecture and what components are used in AEM that help Aem functioning. And we will have a look at
AEM and it’s Custom Application Modules
AEM is built on the Granite platform in the OSGI framework as explained below. Any further custom app modules if needed can be built on top of it.
Component used in Aem –Architecture
Granite Platform:
Adobe Experience Manager is built upon. It contains all the essential components such as:

OSGi
OSGi (Open Service Gateway Initiative) is a Java framework for the development and deployment of modular software programs and libraries by breaking the application into individual modules called bundles so that these bundles can be independently started and stopped.

CRX Content Repository
JCR is a standard Java API to help JAVA apps interact with the content repository and this Content Repository is itself implemented using the open-source Apache Jackrabbit. Adobe has implemented the AEM repository using Apache Jackrabbit with some additional custom features.

Apache Sling
Apache Sling is an open-source Restful web framework for the Java apps to interact with JCR repositories such that all HTTP requests map to a precise content resource in the repository. These requests are then processed by dynamically mapped scripts. In Sling, everything is a resource.

Servlet Engine
Servlet Engine here is basically a servlet container that processes incoming AEM requests. Here, each AEM instance runs as a web application. This engine in AEM can be a Jetty server that comes as default with AEM if you have used crx-quickstart.jar and can be any external third party installed servers such as Tomcat, JBoss if the deployment was using crx-quickstart.war.

Java Runtime Environment [JRE]:
AEM being a Java application needs JRE to run and execute. JRE is basically Java Virtual Machine with JAVA package classes and run-time Libraries. AEM is available as a jar file and needs JRE to make it run on any JAVA supported platform.

AEM working with the latest technology like JCR, OSGI, Apache Sling, And dispatcher configuration in Aem which is the part of DevOps.


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.