In this Aem tutorial, we 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 –ArchitectureGranite Platform:
Adobe Experience Manager is built upon. It contains all the essential components such as:
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 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 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