What is the technology stack of AEM?

Technology Stack of Adobe Experience Manager (AEM)

AEM is a Java-based enterprise content management system (CMS) that runs on a robust, modular architecture. It integrates various technologies for content storage, processing, delivery, and scaling. Below is a breakdown of its technology stack:


1. Core Technologies :
* Java & OSGi (Apache Sling) :
  • Primary Language: Java (AEM is built on Java)
  • OSGi (Open Service Gateway Initiative): A modular architecture that enables component-based development.
  • Apache Sling: A RESTful web framework that maps HTTP requests directly to Java content objects.
* JCR (Java Content Repository) – Apache Jackrabbit Oak :
  • AEM uses Apache Jackrabbit Oak as its underlying content repository.
  • It follows JCR 2.0 (JSR-283) standards for storing and managing hierarchical content.
  • Supports versioning, transactions, and indexing for efficient content storage.
* HTL (HTML Templating Language, formerly Sightly) :
  • A secure and flexible templating language used for building AEM components.
  • Replaces JSP (JavaServer Pages) for better performance and security.

2. Frontend Technologies :
* HTML, CSS, JavaScript :
  • AEM supports modern frontend development with React, Angular, and Vue.js.
  • Can be used as a headless CMS with APIs for frontend frameworks.
* Client-Side Libraries (ClientLibs)
  • Uses Client-Side Libraries (ClientLibs) to manage JavaScript, CSS, and assets efficiently.

3. Storage & Database :
* Apache Jackrabbit Oak (JCR)
  • Stores structured and unstructured content hierarchically.
  • Supports MongoDB or TarMK as persistence layers.
* TarMK vs. MongoMK
  • TarMK (Tar MicroKernel) – Best for standalone instances (single-author mode).
  • MongoMK – Used for multi-author clustering in enterprise environments.

4. APIs & Integrations
* REST & GraphQL APIs :
  • AEM provides RESTful APIs for content access and manipulation.
  • GraphQL support for headless CMS implementations.
* Adobe Sensei AI & Machine Learning :
  • AI-powered content insights, auto-tagging, personalization, and analytics.
* Integration with Adobe Experience Cloud
  • Adobe Analytics (data insights).
  • Adobe Target (A/B testing & personalization).
  • Adobe Commerce (Magento) (eCommerce solutions).

5. Deployment & Cloud Technologies :
* AEM as a Cloud Service :
  • Cloud-native architecture with auto-scaling and continuous updates.
  • Supports Kubernetes & Docker for containerized deployments.
* Traditional On-Premises & Hybrid Deployment
  • Can be deployed on AWS, Azure, or on-premises.
  • Uses Apache HTTP Server & Dispatcher for caching and security.

6. Security & Performance Optimization :
* Apache Dispatcher (CDN & Cache Layer) :
  • Acts as a caching and load balancing tool for performance optimization.
  • Helps protect against DDoS attacks by filtering unwanted requests.
* Authentication & Authorization :
  • Supports LDAP, OAuth, and SAML for secure user authentication.
  • Role-based access control (RBAC) for content and user permissions.

Summary of AEM Technology Stack :
Layer Technology
Backend Java, OSGi, Apache Sling
Repository Apache Jackrabbit Oak (JCR 2.0)
Frontend HTL, React, Angular, Vue.js
APIs REST, GraphQL
Storage TarMK, MongoDB
Security LDAP, OAuth, Apache Dispatcher
Cloud Adobe Experience Cloud, Kubernetes, Docker