SlideShare a Scribd company logo
4
Most read
5
Most read
6
Most read
AEM ARCHITECTURE
The six key steps to create a solid AEM solution
The six key steps
An overall
picture
Feature
mapping
The content
structure
The
integration
Deployment
model
Routine
maintenance
Create Perform Simplify
Trash out Finalize the Plan for
THE OVERALL PICTURE
Get it right…
Getting the overall picture right
 Its important to create an overall picture of the solution and
finalize where AEM fits in this overall solution before proceeding
further
 Decide on the boundary of each of the system in the overall
scope and finalize the responsibility of each
 Analyze the system separately from authoring point of view and
publish point of view. The overall layout you foresee for author
might be very different from that of publish
 The role of AEM in the overall system solution can fall into one
of the following three categories
AEM as umbrella system
A standalone AEM implementation or AEM as the wrapper system that
integrates with other systems and delivers the site
 AEM most often would be
the umbrella system
integrating with other
systems to serve the
functionality
 In this configuration AEM
takes the responsibility of
integrating with other
systems to provide
integrated functionality
AEM
A B C
X
AEM as umbrella system
AEM as provider system
Beware of the impact on AEM internal functionalities when using AEM as
provider system
 AEM would very well be
one of the backend system
providing services to other
systems
 Beware of the AEM
internal working details
when deploying AEM in
this mode
 E.g., how can AEM deliver
targeted content as
service???
System X
B C
A
AEM as provider system
AEM
AEM as independent system in the stack
 AEM could also be an
independent system
providing services to be
consumed directly from the
client devices
 AJAX calls directly to AEM
to pull content (becoming
popular in sites
implementing client MVC
frameworks)
 Beware of the security
implications when deploying
in this mode
System X
B CA
AEM as independent system
AEM
The de facto layers in the eco system
 Always consider the de facto layers
in the eco system
 These are almost always there and
has to be planned for in the
overall layout
 With AEM, these layers impacts
some of the key decisions made
 Remember AEM has dispatcher
and make attempt to cache
everything that goes out of AEM
 Anything that’s cached in
dispatcher can be cached in CDN
The de facto layers
Content Delivery Networks
Data centers
Load Balancers
Web servers
FEATURE MAPPING
Product selection and mapping the features needed to the
capabilities
AEM only vs. AEM + others
List out all the features needed and map it to the capabilities
 Consider all the features
required for the overall solution.
Features include capabilities like
Security, Multi-lingual, Analytics,
Search, Targeting, so on…
 AEM provides capabilities for
most of these features which
may or may not suffice for the
given requirement
 Beware leveraging some of
these features from AEM might
require additional licensing
Validate objectively
Adobe would try to goad you into
using their stack. While using
products from the same suite has its
advantages, it might have serious
limitations especially when your
overall solution is a complex mix of
multiple systems
Validate with POC’s
You might need few proof of concepts if you are choosing different products to
complete the feature requirements
 Some of the functionalities within AEM are tightly integrated
 For example, AEM targeting depends on campaign management and
Profiles. In case you make a choice to use Profile from a different
system and targeting from AEM, be sure that the fitment is correct
 Work of the details to the most granular level possible at this stage
 Its wise to plan few proof of concepts to validate any assumptions
that are taken
CONTENT STRUCTURE
Almost all design aspects link back to the content structure
Content structure
Almost all minor design aspects link back to the content structure
 The content structure impacts
security design, template
finalization, component visibility,
content flow, …
 Remember content stored in JCR in
hierarchical
 Keep the content structure as
simple as possible and contain
cross linking of content to the
minimal
 Keep the structure flexible…
provide to maintain more
languages, companies,
departments…
Some technical stuff to remember
 There are no rigid primary keys in
JCR storage. Do not depend on
them
 You cannot store null values.
Property not present means value
is null or empty or non-existent
 Design to keep the queries to run
on nodes nested as deep as
possible in the JCR structure
INTEGRATION
Correct integration approach is the key to the success of the
implementation
Integration approaches
Move the integration as close to the browser as possible
Integrate in the browser: Possible
when the services to be integrated
with are exposed over http and
available for consumption from the
browser
Integration at the OSGI: Use
this for logic intensive
integration. Create wrapper
bundles to be consumed from
multiple places
Integrate at the dispatcher:
Possible when the services to be
integrated with are available over
http; but are not exposed to the
browser
Integrate at the Sling layer:
Maintain caution to avoid making
this layer logic intensive. Simple
REST end points can be consumed
at sling layer
When AEM exposes services
Expose them as REST Services
Logic in OSGI
Sling servlet as gateway
Make it RESTful
Through dispatcher
Implementation Exposing
Less frequently changing content
Use batch jobs to periodically pull content into AEM
Batch job to pull
content periodically
and store it within
AEM
Expose
content for
AEM
consumption
DEPLOYMENT MODEL
Plan the deployment model well in advance…
Deployment drives some design choices
The big Mongo vs. Tar war in AEM 6.1… and Tar wins hands down
MAINTENANCE
Remember: AEM will breakdown if maintenance activities
are not carried out periodically
Backup, Purge, Compact
A lot happens inside AEM and is prone to corruption if not maintained
properly
Backup Purge Compact
 AEM backup is
copying the file system
 Repository structure to
align with backup
policy
 Provision additional
systems to run backup
on if preferred
 Plan separate backups
for author and publish
 Version, workflows
and audit logs needs
to be purged
 Finalize purge policy
and configure purge
activities
 The repository would
quickly grow to a
huge size if not for
purging
 This requires AEM
downtime.
 Best approach is to do
it on one instance and
clone that instance to
other instances
(publish)
 Keep the publish
instance homogenous
(identical clones)
THANK YOU
Feedback and suggestions welcome. Please write to ashokkumar_ta /
ashokkumar.ta@gmail.com

More Related Content

PPTX
Adobe Meetup AEM Architecture Sydney 2015
PDF
ReactJS presentation
PDF
React js
PDF
Adobe Experience Manager Core Components
PPTX
reactJS
PDF
An Introduction to ReactJS
PPT
Spring ppt
PPTX
Introduction to React JS for beginners
Adobe Meetup AEM Architecture Sydney 2015
ReactJS presentation
React js
Adobe Experience Manager Core Components
reactJS
An Introduction to ReactJS
Spring ppt
Introduction to React JS for beginners

What's hot (20)

DOCX
Aem Training Tutorials for Beginners
PDF
모니터링 영역의 변천사_클라우드, 디지털 경험까지)
PPTX
React js programming concept
PDF
Confluent Tech Talk Korea
PPTX
React-JS.pptx
PDF
Introduction to React JS
PPTX
Openstack glance
PPTX
What is gRPC introduction gRPC Explained
PPTX
Introduction to Apache Camel
PPTX
Introduction to React JS
PDF
ES6 presentation
PDF
Event-Driven Microservices With NATS Streaming
PPTX
[Final] ReactJS presentation
PPTX
Intro to React
PDF
The virtual DOM and how react uses it internally
PPTX
Web-Development-ppt (1).pptx
PPTX
Overview - ESBs and IBM Integration Bus
PDF
Modern Web Development
PPTX
Introduction to Redis
Aem Training Tutorials for Beginners
모니터링 영역의 변천사_클라우드, 디지털 경험까지)
React js programming concept
Confluent Tech Talk Korea
React-JS.pptx
Introduction to React JS
Openstack glance
What is gRPC introduction gRPC Explained
Introduction to Apache Camel
Introduction to React JS
ES6 presentation
Event-Driven Microservices With NATS Streaming
[Final] ReactJS presentation
Intro to React
The virtual DOM and how react uses it internally
Web-Development-ppt (1).pptx
Overview - ESBs and IBM Integration Bus
Modern Web Development
Introduction to Redis
Ad

Similar to The six key steps to AEM architecture (20)

PPTX
EVOLVE'14 | Enhance | Paul McMahon | AEM & Transactional Portal Systems
PDF
AEM_eCommerce_integration_patterns
PPTX
Razorfish 2014 Tech Summit - Group VP Technology at Razorfish Martin Jacobs
PPTX
AEM.Design - Project Introduction
PPTX
Four approaches to integrate aem with external systems by Jan Kuzniak
PPTX
Enterprise Architecture in Practice: from Datastore to APIs and Apps
PPTX
Melbourne User Group OAK and MongoDB
PPT
A Software Factory Integrating Rational & WebSphere Tools
PDF
A foundation for database simplifi cation, consolidation and cost reduction
PPTX
Evolve 19 | Benjie Wheeler | Intro to Adobe Experience Manager 6.5
PDF
[Webinar Slides] Realizing the True Value of ECM with Integration
PPTX
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
PPTX
IMMERSE'16 Intro to Adobe Experience Manager & Adobe Marketing Cloud
PDF
FISL: Content Management Primer
PDF
Circuit 2015 Keynote - Carsten Ziegeler
PDF
Integration strategies best practices- Mulesoft meetup April 2018
PPT
A Software Factory Integrating Rational Team Concert and WebSphere tools
PDF
Aem maintenance
PPT
Eniac – Lotus Consolidation 2009
PPTX
Building a Documentation Portal
EVOLVE'14 | Enhance | Paul McMahon | AEM & Transactional Portal Systems
AEM_eCommerce_integration_patterns
Razorfish 2014 Tech Summit - Group VP Technology at Razorfish Martin Jacobs
AEM.Design - Project Introduction
Four approaches to integrate aem with external systems by Jan Kuzniak
Enterprise Architecture in Practice: from Datastore to APIs and Apps
Melbourne User Group OAK and MongoDB
A Software Factory Integrating Rational & WebSphere Tools
A foundation for database simplifi cation, consolidation and cost reduction
Evolve 19 | Benjie Wheeler | Intro to Adobe Experience Manager 6.5
[Webinar Slides] Realizing the True Value of ECM with Integration
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
IMMERSE'16 Intro to Adobe Experience Manager & Adobe Marketing Cloud
FISL: Content Management Primer
Circuit 2015 Keynote - Carsten Ziegeler
Integration strategies best practices- Mulesoft meetup April 2018
A Software Factory Integrating Rational Team Concert and WebSphere tools
Aem maintenance
Eniac – Lotus Consolidation 2009
Building a Documentation Portal
Ad

More from Ashokkumar T A (17)

PDF
A quick introduction to Strapi CMS
PDF
A quick introduction to GraphQL
PDF
Cloud trends - 2020
PDF
AEM - Binary less replication
PDF
Microservices trends - 2020
PDF
Upgrading or migrating to a higher AEM version - Planning and process
PDF
Aligning to AEMs Release Cycle
PDF
Designing for search in AEM
PDF
AEM - A Collection of developer friendly tools
PDF
On MQ Series & JMS
PDF
Aem offline content
PDF
Reactive applications
PDF
Redis overview
PDF
Apache shiro security framework
PDF
Web analytics an intro
PDF
Cms product evaluation
PDF
Aem dispatcher – tips & tricks
A quick introduction to Strapi CMS
A quick introduction to GraphQL
Cloud trends - 2020
AEM - Binary less replication
Microservices trends - 2020
Upgrading or migrating to a higher AEM version - Planning and process
Aligning to AEMs Release Cycle
Designing for search in AEM
AEM - A Collection of developer friendly tools
On MQ Series & JMS
Aem offline content
Reactive applications
Redis overview
Apache shiro security framework
Web analytics an intro
Cms product evaluation
Aem dispatcher – tips & tricks

Recently uploaded (20)

PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
cuic standard and advanced reporting.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Electronic commerce courselecture one. Pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
“AI and Expert System Decision Support & Business Intelligence Systems”
sap open course for s4hana steps from ECC to s4
Encapsulation_ Review paper, used for researhc scholars
Review of recent advances in non-invasive hemoglobin estimation
Spectral efficient network and resource selection model in 5G networks
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
cuic standard and advanced reporting.pdf
Big Data Technologies - Introduction.pptx
Electronic commerce courselecture one. Pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Machine learning based COVID-19 study performance prediction
NewMind AI Weekly Chronicles - August'25 Week I
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Unlocking AI with Model Context Protocol (MCP)
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy

The six key steps to AEM architecture

  • 1. AEM ARCHITECTURE The six key steps to create a solid AEM solution
  • 2. The six key steps An overall picture Feature mapping The content structure The integration Deployment model Routine maintenance Create Perform Simplify Trash out Finalize the Plan for
  • 4. Getting the overall picture right  Its important to create an overall picture of the solution and finalize where AEM fits in this overall solution before proceeding further  Decide on the boundary of each of the system in the overall scope and finalize the responsibility of each  Analyze the system separately from authoring point of view and publish point of view. The overall layout you foresee for author might be very different from that of publish  The role of AEM in the overall system solution can fall into one of the following three categories
  • 5. AEM as umbrella system A standalone AEM implementation or AEM as the wrapper system that integrates with other systems and delivers the site  AEM most often would be the umbrella system integrating with other systems to serve the functionality  In this configuration AEM takes the responsibility of integrating with other systems to provide integrated functionality AEM A B C X AEM as umbrella system
  • 6. AEM as provider system Beware of the impact on AEM internal functionalities when using AEM as provider system  AEM would very well be one of the backend system providing services to other systems  Beware of the AEM internal working details when deploying AEM in this mode  E.g., how can AEM deliver targeted content as service??? System X B C A AEM as provider system AEM
  • 7. AEM as independent system in the stack  AEM could also be an independent system providing services to be consumed directly from the client devices  AJAX calls directly to AEM to pull content (becoming popular in sites implementing client MVC frameworks)  Beware of the security implications when deploying in this mode System X B CA AEM as independent system AEM
  • 8. The de facto layers in the eco system  Always consider the de facto layers in the eco system  These are almost always there and has to be planned for in the overall layout  With AEM, these layers impacts some of the key decisions made  Remember AEM has dispatcher and make attempt to cache everything that goes out of AEM  Anything that’s cached in dispatcher can be cached in CDN The de facto layers Content Delivery Networks Data centers Load Balancers Web servers
  • 9. FEATURE MAPPING Product selection and mapping the features needed to the capabilities
  • 10. AEM only vs. AEM + others List out all the features needed and map it to the capabilities  Consider all the features required for the overall solution. Features include capabilities like Security, Multi-lingual, Analytics, Search, Targeting, so on…  AEM provides capabilities for most of these features which may or may not suffice for the given requirement  Beware leveraging some of these features from AEM might require additional licensing Validate objectively Adobe would try to goad you into using their stack. While using products from the same suite has its advantages, it might have serious limitations especially when your overall solution is a complex mix of multiple systems
  • 11. Validate with POC’s You might need few proof of concepts if you are choosing different products to complete the feature requirements  Some of the functionalities within AEM are tightly integrated  For example, AEM targeting depends on campaign management and Profiles. In case you make a choice to use Profile from a different system and targeting from AEM, be sure that the fitment is correct  Work of the details to the most granular level possible at this stage  Its wise to plan few proof of concepts to validate any assumptions that are taken
  • 12. CONTENT STRUCTURE Almost all design aspects link back to the content structure
  • 13. Content structure Almost all minor design aspects link back to the content structure  The content structure impacts security design, template finalization, component visibility, content flow, …  Remember content stored in JCR in hierarchical  Keep the content structure as simple as possible and contain cross linking of content to the minimal  Keep the structure flexible… provide to maintain more languages, companies, departments… Some technical stuff to remember  There are no rigid primary keys in JCR storage. Do not depend on them  You cannot store null values. Property not present means value is null or empty or non-existent  Design to keep the queries to run on nodes nested as deep as possible in the JCR structure
  • 14. INTEGRATION Correct integration approach is the key to the success of the implementation
  • 15. Integration approaches Move the integration as close to the browser as possible Integrate in the browser: Possible when the services to be integrated with are exposed over http and available for consumption from the browser Integration at the OSGI: Use this for logic intensive integration. Create wrapper bundles to be consumed from multiple places Integrate at the dispatcher: Possible when the services to be integrated with are available over http; but are not exposed to the browser Integrate at the Sling layer: Maintain caution to avoid making this layer logic intensive. Simple REST end points can be consumed at sling layer
  • 16. When AEM exposes services Expose them as REST Services Logic in OSGI Sling servlet as gateway Make it RESTful Through dispatcher Implementation Exposing
  • 17. Less frequently changing content Use batch jobs to periodically pull content into AEM Batch job to pull content periodically and store it within AEM Expose content for AEM consumption
  • 18. DEPLOYMENT MODEL Plan the deployment model well in advance…
  • 19. Deployment drives some design choices The big Mongo vs. Tar war in AEM 6.1… and Tar wins hands down
  • 20. MAINTENANCE Remember: AEM will breakdown if maintenance activities are not carried out periodically
  • 21. Backup, Purge, Compact A lot happens inside AEM and is prone to corruption if not maintained properly Backup Purge Compact  AEM backup is copying the file system  Repository structure to align with backup policy  Provision additional systems to run backup on if preferred  Plan separate backups for author and publish  Version, workflows and audit logs needs to be purged  Finalize purge policy and configure purge activities  The repository would quickly grow to a huge size if not for purging  This requires AEM downtime.  Best approach is to do it on one instance and clone that instance to other instances (publish)  Keep the publish instance homogenous (identical clones)
  • 22. THANK YOU Feedback and suggestions welcome. Please write to ashokkumar_ta / ashokkumar.ta@gmail.com