SlideShare une entreprise Scribd logo
1  sur  49
New Repository in AEM 6
and other goodies for developers
Michael Marth, Adobe
About @michaelmarth
Senior Engineering Manager at Adobe
Responsible for Granite platform
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Before we start
3
Certifications
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Scalability Oak
4
AEM 6.0 Content Repository
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
AEM 6.0 Content Repository
Goals
 Scalability
 Big repositories
 Distributed, many cluster nodes
 Write throughput
 Parallel writes
 Write performance
 Many child nodes
 Many ACLs
5
Project “Oak”
 aka Jackrabbit 3, all open source
 Apache Software Foundation
http://jackrabbit.apache.org/oak/
 Implementation of the JCR spec, JSR-283
Your apps run unchanged
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Architecture
6
JCR
oak-core
Micro kernel
Oak API
Micro kernel API
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Microkernel choose according to your scalability and
performance requirements
7
jjjJCR Content Repository
Persistence
AEM
Performance Optimized and Made for Scale
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Node Store Where nodes get stored
8
Nodes Binaries
• Tar MK
Tar files, locally
• MongoMK
MongoDB
• …
(other are WIP)
oak-core
JCR
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Stores Where the binary data gets stored
9
• File System (local, NAS,
SAN)
shareable
• S3
for AWS deployments
• In Tar files
easier backup and ops
• In MongoDB
easier backup and ops
oak-core
JCR
Nodes Binaries
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
TarMK Memory-mapped files
10
92 GB
unused
CQ5.x Tar PM 100GB RAM in Server
8GB
JVM
AEM6 Tar MK: 100GB RAM in Server
8GB
JVM
92 GB off-heap
used for running the repo from RAM
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
MongoMK Cluster Deployment Topologies
11
MongoS
AEM with
Oak
MongoD Primary MongoD Secondary MongoD Secondary
MongoDB replication
r/w r r
MongoS
AEM with
Oak
MongoS
AEM with
Oak
ShareNothing
ShareNothing
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Micro Kernels Which one shall I use?
12
AEM6 Author
default: TarMK
local, fast, easy to operate
“I need reliability”: TarMK + Failover instance
HTTP-transported copy of instance, failover switch e.g. Nagios
“I need scalability”: MongoMK Cluster
Scale CPU (many AEM instances)
Scale read throughput (many Mongo replicas)
Scale globally (distribute replicas globally)
“I cannot change the repository”: Remain on CRX2 Cluster
Supported, but deprecated
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Micro Kernels Which one shall I use?
13
AEM6 Publish
Primary use case is Publishing: TarMK as a “Farm” (independent
instances)
fast, independent, easy to operate
Primary use case is User Generated Content: MongoMK in a Publish
Cluster
all Publish instances running on same MongoDB
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Search Pluggable Index Providers
14
• Property Index Provider
stored in repo, backup’ed
sync/async
re-indexable asynchronously
ordered indexes
• Lucene
full-text extraction
stored in data store
• Solr
in JVM (OSGi runtime) or remote (for
production)
native queries language exposed
oak-core
JCR
MK
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Search Configurable Indexes
15
• Index Definition via nodes
not everything indexed by default anymore
allows smaller, specialized, faster indexes
no need to index nodes you do not search for
• In AEM: pre-configured
indexes for AEM itself
• Define custom indexes for your
application’s needs
without an index the repo will be traversed on a
query
oak-core
JCR
MK
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Numbers Performance & Scalability
16
TarMK running on my MacBook (i.e. totally unscientific)
• add nodes, session.save() for each node: xxx nodes added / sec
• add nodes, batch save(): xxx nodes added / sec
• add property, catch save(): xxx properties added / sec
• import files from Wikipedia, flat hierarchy:
MongoMK running on our Jenkins server
• 1 Oak instance on MongoMK: nodes added / sec…
• 3 Oak instances on MongoMK: nodes added / sec… (factor yyy)
• 5 Oak instances on MongoMK: nodes added / sec…(factor yyy)
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Performance & Scalability Some Hints
17
Observations in a Cluster
• Many Oak instances, high write throughput needed
• Be mindful of observation listeners
• Only listen to local events
• Restrict paths you listen on
Many child nodes
• Many child nodes, high write throughput
• Be mindful of sorted node types
• nt:unstructured is sorted
• oak:unstructured is not
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Sys Admins
18
Operations Dashboard
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Project Efficiency Granite Operations Dashboard
provides control over system health, diagnosis and
maintenance automation, efficiently and extensible.
19
Main features:
• System health overview at a glance
• Reducing time to find, analyze and fix issues
• One-Click System Status to help file AEM Support tickets
• Maintenance automation to reduce project operations
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 20
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 21
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 23
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Sys Admins
24
One-Click Setup
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Project Efficiency One-Click Setup instantly fires up
AEM instances in the cloud right
25
Main features:
• Ready-made AEM configurations
• Spins up machines in AWS – you maintain full control of the
machines
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 26
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 27
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 28
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 29
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 30
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Developers
31
Developer Mode
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Project Efficiency Developer Mode
32
Main features:
• Inspect component performance right in the page
• Run automated tests
• Inspect component errors right in the context of the page
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 33
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 35
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 36
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Developers
38
Eclipse Tooling
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 39
DEMO
What else is coming up
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41
Sightly
Beautiful Markup
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 42
Mobile
PhoneGap Enterprise
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 43
one more
thing™
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Sneak Peak
44
Granite.JS
aka AEM Micro Engine
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Granite.JS Granite Javascript Platform
45
Main features:
• Lightweight, scripting server stack
• REST based content-driven web framework for server-side
JavaScript development
• Runs Sightly
• Based on Node.js
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Granite.JS Architecture
46
jjj
Coral UI / Sightly
Sling
AEM
Granite/AEM - Java
Oak
REST
Microkernel (Java)
OSGi
jjj
Coral UI / Sightly
Sling.JS
Granite.JS – Node.JS
Repository
REST
Microkernel (C)
NPM
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Granite.JS Use Case (I) – Web Developer in AEM
Projects
47
UI Dev
codes
Sightly,
CSS, etc
Brackets Grunt Granite.JS
Java Dev
codes
Java,
OSGi services
Eclipse Maven Granite/AEM
gitpush
Maven
AEM Production Pkg
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 48
DEMO
Thank for your attention

Contenu connexe

Tendances

AEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly toolsAEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly toolsAshokkumar T A
 
The six key steps to AEM architecture
The six key steps to AEM architectureThe six key steps to AEM architecture
The six key steps to AEM architectureAshokkumar T A
 
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...Webinar: Optimize digital customer experiences with Adobe Experience Manager ...
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...MongoDB
 
AEM GEMS Session SAML authentication in AEM
AEM GEMS Session SAML authentication in AEMAEM GEMS Session SAML authentication in AEM
AEM GEMS Session SAML authentication in AEMAdobeMarketingCloud
 
Four approaches to integrate aem with external systems by Jan Kuzniak
Four approaches to integrate aem with external systems by Jan KuzniakFour approaches to integrate aem with external systems by Jan Kuzniak
Four approaches to integrate aem with external systems by Jan KuzniakAEM HUB
 
Introdcution to Adobe CQ
Introdcution to Adobe CQIntrodcution to Adobe CQ
Introdcution to Adobe CQRest West
 
AEM target Integration
AEM target IntegrationAEM target Integration
AEM target IntegrationKanika Gera
 
Effectively Scale and Operate AEM with MongoDB by Norberto Leite
Effectively Scale and Operate AEM with MongoDB by Norberto LeiteEffectively Scale and Operate AEM with MongoDB by Norberto Leite
Effectively Scale and Operate AEM with MongoDB by Norberto LeiteAEM HUB
 
CIRCUIT 2015 - Akamai: Caching and Beyond
CIRCUIT 2015 - Akamai:  Caching and BeyondCIRCUIT 2015 - Akamai:  Caching and Beyond
CIRCUIT 2015 - Akamai: Caching and BeyondICF CIRCUIT
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Brent Noorda
 
Adobe Experience Manager - 6th Edition by Cedric Huesler
Adobe Experience Manager - 6th Edition by Cedric HueslerAdobe Experience Manager - 6th Edition by Cedric Huesler
Adobe Experience Manager - 6th Edition by Cedric HueslerAEM HUB
 
IMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endIMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endAdobeMarketingCloud
 
The Next Step in Responsive - RESS
The Next Step in Responsive - RESSThe Next Step in Responsive - RESS
The Next Step in Responsive - RESSAnthony Laurence
 
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014Amazon Web Services
 
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site Factory
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site FactoryDrupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site Factory
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site FactoryAcquia
 
AEM - Key Learning from Escalations
AEM - Key Learning from EscalationsAEM - Key Learning from Escalations
AEM - Key Learning from EscalationsKanika Gera
 
Developer Insights for Application Upgrade to ColdFusion 2016
Developer Insights for Application Upgrade to ColdFusion 2016Developer Insights for Application Upgrade to ColdFusion 2016
Developer Insights for Application Upgrade to ColdFusion 2016ColdFusionConference
 
Word press as your company website
Word press as your company websiteWord press as your company website
Word press as your company websiteKelli Wise
 

Tendances (20)

AEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly toolsAEM - A Collection of developer friendly tools
AEM - A Collection of developer friendly tools
 
The six key steps to AEM architecture
The six key steps to AEM architectureThe six key steps to AEM architecture
The six key steps to AEM architecture
 
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...Webinar: Optimize digital customer experiences with Adobe Experience Manager ...
Webinar: Optimize digital customer experiences with Adobe Experience Manager ...
 
AEM GEMS Session SAML authentication in AEM
AEM GEMS Session SAML authentication in AEMAEM GEMS Session SAML authentication in AEM
AEM GEMS Session SAML authentication in AEM
 
Four approaches to integrate aem with external systems by Jan Kuzniak
Four approaches to integrate aem with external systems by Jan KuzniakFour approaches to integrate aem with external systems by Jan Kuzniak
Four approaches to integrate aem with external systems by Jan Kuzniak
 
Introdcution to Adobe CQ
Introdcution to Adobe CQIntrodcution to Adobe CQ
Introdcution to Adobe CQ
 
AEM target Integration
AEM target IntegrationAEM target Integration
AEM target Integration
 
Effectively Scale and Operate AEM with MongoDB by Norberto Leite
Effectively Scale and Operate AEM with MongoDB by Norberto LeiteEffectively Scale and Operate AEM with MongoDB by Norberto Leite
Effectively Scale and Operate AEM with MongoDB by Norberto Leite
 
CIRCUIT 2015 - Akamai: Caching and Beyond
CIRCUIT 2015 - Akamai:  Caching and BeyondCIRCUIT 2015 - Akamai:  Caching and Beyond
CIRCUIT 2015 - Akamai: Caching and Beyond
 
Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.Java script anywhere. What Nombas was doing pre-acquisition.
Java script anywhere. What Nombas was doing pre-acquisition.
 
EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...
EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...
EVOLVE'13 | Enhance | Permission Sensitive Caching | Paul McMahon & Jason Rap...
 
Adobe Experience Manager - 6th Edition by Cedric Huesler
Adobe Experience Manager - 6th Edition by Cedric HueslerAdobe Experience Manager - 6th Edition by Cedric Huesler
Adobe Experience Manager - 6th Edition by Cedric Huesler
 
Beyond AEM Curl Commands
Beyond AEM Curl CommandsBeyond AEM Curl Commands
Beyond AEM Curl Commands
 
IMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endIMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back end
 
The Next Step in Responsive - RESS
The Next Step in Responsive - RESSThe Next Step in Responsive - RESS
The Next Step in Responsive - RESS
 
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014
(WEB203) Building a Website That Costs Pennies to Operate | AWS re:Invent 2014
 
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site Factory
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site FactoryDrupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site Factory
Drupal Step-by-Step: Building a Drupal Site with Acquia Cloud Site Factory
 
AEM - Key Learning from Escalations
AEM - Key Learning from EscalationsAEM - Key Learning from Escalations
AEM - Key Learning from Escalations
 
Developer Insights for Application Upgrade to ColdFusion 2016
Developer Insights for Application Upgrade to ColdFusion 2016Developer Insights for Application Upgrade to ColdFusion 2016
Developer Insights for Application Upgrade to ColdFusion 2016
 
Word press as your company website
Word press as your company websiteWord press as your company website
Word press as your company website
 

En vedette

Oak, the architecture of Apache Jackrabbit 3
Oak, the architecture of Apache Jackrabbit 3Oak, the architecture of Apache Jackrabbit 3
Oak, the architecture of Apache Jackrabbit 3Jukka Zitting
 
The new repository in AEM 6
The new repository in AEM 6The new repository in AEM 6
The new repository in AEM 6Jukka Zitting
 
Adobe Meetup AEM Architecture Sydney 2015
Adobe Meetup AEM Architecture Sydney 2015Adobe Meetup AEM Architecture Sydney 2015
Adobe Meetup AEM Architecture Sydney 2015Michael Henderson
 
Introduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsIntroduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsStefano Celentano
 
AEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentGabriel Walt
 
Oak, the Architecture of the new Repository
Oak, the Architecture of the new RepositoryOak, the Architecture of the new Repository
Oak, the Architecture of the new RepositoryMichael Dürig
 
Microservices Architecture for AEM
Microservices Architecture for AEMMicroservices Architecture for AEM
Microservices Architecture for AEMMaciej Majchrzak
 
Apache Jackrabbit Oak on MongoDB
Apache Jackrabbit Oak on MongoDBApache Jackrabbit Oak on MongoDB
Apache Jackrabbit Oak on MongoDBMongoDB
 
Content personalization in AEM
Content personalization in AEMContent personalization in AEM
Content personalization in AEMAnkit Gubrani
 
Into the TarPit: A TarMK Deep Dive
Into the TarPit: A TarMK Deep DiveInto the TarPit: A TarMK Deep Dive
Into the TarPit: A TarMK Deep DiveMichael Dürig
 
Understanding Sling Models in AEM
Understanding Sling Models in AEMUnderstanding Sling Models in AEM
Understanding Sling Models in AEMAccunity Software
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMconnectwebex
 
JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?connectwebex
 
AEM 6 - Client Context Personalization
AEM 6 - Client Context Personalization AEM 6 - Client Context Personalization
AEM 6 - Client Context Personalization Prabhdeep Singh
 
User Interface customization for AEM 6
User Interface customization for AEM 6User Interface customization for AEM 6
User Interface customization for AEM 6Damien Antipa
 
Touching the AEM component dialog by Mateusz Chromiński
Touching the AEM component dialog by Mateusz ChromińskiTouching the AEM component dialog by Mateusz Chromiński
Touching the AEM component dialog by Mateusz ChromińskiAEM HUB
 
Sling Models Using Sightly and JSP by Deepak Khetawat
Sling Models Using Sightly and JSP by Deepak KhetawatSling Models Using Sightly and JSP by Deepak Khetawat
Sling Models Using Sightly and JSP by Deepak KhetawatAEM HUB
 
AEM Apps Enhanced: In-app Messaging and Beacons by John Fait
AEM Apps Enhanced: In-app Messaging and Beacons by John FaitAEM Apps Enhanced: In-app Messaging and Beacons by John Fait
AEM Apps Enhanced: In-app Messaging and Beacons by John FaitAEM HUB
 
/path/to/content - the Apache Jackrabbit content repository
/path/to/content - the Apache Jackrabbit content repository/path/to/content - the Apache Jackrabbit content repository
/path/to/content - the Apache Jackrabbit content repositoryJukka Zitting
 
Apache Jackrabbit Oak - Scale your content repository to the cloud
Apache Jackrabbit Oak - Scale your content repository to the cloudApache Jackrabbit Oak - Scale your content repository to the cloud
Apache Jackrabbit Oak - Scale your content repository to the cloudRobert Munteanu
 

En vedette (20)

Oak, the architecture of Apache Jackrabbit 3
Oak, the architecture of Apache Jackrabbit 3Oak, the architecture of Apache Jackrabbit 3
Oak, the architecture of Apache Jackrabbit 3
 
The new repository in AEM 6
The new repository in AEM 6The new repository in AEM 6
The new repository in AEM 6
 
Adobe Meetup AEM Architecture Sydney 2015
Adobe Meetup AEM Architecture Sydney 2015Adobe Meetup AEM Architecture Sydney 2015
Adobe Meetup AEM Architecture Sydney 2015
 
Introduction to Sightly and Sling Models
Introduction to Sightly and Sling ModelsIntroduction to Sightly and Sling Models
Introduction to Sightly and Sling Models
 
AEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component Development
 
Oak, the Architecture of the new Repository
Oak, the Architecture of the new RepositoryOak, the Architecture of the new Repository
Oak, the Architecture of the new Repository
 
Microservices Architecture for AEM
Microservices Architecture for AEMMicroservices Architecture for AEM
Microservices Architecture for AEM
 
Apache Jackrabbit Oak on MongoDB
Apache Jackrabbit Oak on MongoDBApache Jackrabbit Oak on MongoDB
Apache Jackrabbit Oak on MongoDB
 
Content personalization in AEM
Content personalization in AEMContent personalization in AEM
Content personalization in AEM
 
Into the TarPit: A TarMK Deep Dive
Into the TarPit: A TarMK Deep DiveInto the TarPit: A TarMK Deep Dive
Into the TarPit: A TarMK Deep Dive
 
Understanding Sling Models in AEM
Understanding Sling Models in AEMUnderstanding Sling Models in AEM
Understanding Sling Models in AEM
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
 
JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?JCR, Sling or AEM? Which API should I use and when?
JCR, Sling or AEM? Which API should I use and when?
 
AEM 6 - Client Context Personalization
AEM 6 - Client Context Personalization AEM 6 - Client Context Personalization
AEM 6 - Client Context Personalization
 
User Interface customization for AEM 6
User Interface customization for AEM 6User Interface customization for AEM 6
User Interface customization for AEM 6
 
Touching the AEM component dialog by Mateusz Chromiński
Touching the AEM component dialog by Mateusz ChromińskiTouching the AEM component dialog by Mateusz Chromiński
Touching the AEM component dialog by Mateusz Chromiński
 
Sling Models Using Sightly and JSP by Deepak Khetawat
Sling Models Using Sightly and JSP by Deepak KhetawatSling Models Using Sightly and JSP by Deepak Khetawat
Sling Models Using Sightly and JSP by Deepak Khetawat
 
AEM Apps Enhanced: In-app Messaging and Beacons by John Fait
AEM Apps Enhanced: In-app Messaging and Beacons by John FaitAEM Apps Enhanced: In-app Messaging and Beacons by John Fait
AEM Apps Enhanced: In-app Messaging and Beacons by John Fait
 
/path/to/content - the Apache Jackrabbit content repository
/path/to/content - the Apache Jackrabbit content repository/path/to/content - the Apache Jackrabbit content repository
/path/to/content - the Apache Jackrabbit content repository
 
Apache Jackrabbit Oak - Scale your content repository to the cloud
Apache Jackrabbit Oak - Scale your content repository to the cloudApache Jackrabbit Oak - Scale your content repository to the cloud
Apache Jackrabbit Oak - Scale your content repository to the cloud
 

Similaire à New Repository in AEM 6 by Michael Marth

SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSumanMitra22
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February markghiasy
 
AEM Communities 6.1 - MongoSV '15
AEM Communities 6.1 - MongoSV '15AEM Communities 6.1 - MongoSV '15
AEM Communities 6.1 - MongoSV '15Kevin Nennig
 
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM Communities
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM CommunitiesMongoDB Days Silicon Valley: Using MongoDB with Adobe AEM Communities
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM CommunitiesMongoDB
 
Automating a PostgreSQL High Availability Architecture with Ansible
Automating a PostgreSQL High Availability Architecture with AnsibleAutomating a PostgreSQL High Availability Architecture with Ansible
Automating a PostgreSQL High Availability Architecture with AnsibleEDB
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeCodeOps Technologies LLP
 
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...James Anderson
 
JavaOne 2014: Next Step in Automation: Elastic Build Environment
JavaOne 2014: Next Step in Automation: Elastic Build EnvironmentJavaOne 2014: Next Step in Automation: Elastic Build Environment
JavaOne 2014: Next Step in Automation: Elastic Build EnvironmentKohsuke Kawaguchi
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdam Pazik
 
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
Webinar: Nightmares of a Container Orchestration System - Jorg SchadWebinar: Nightmares of a Container Orchestration System - Jorg Schad
Webinar: Nightmares of a Container Orchestration System - Jorg SchadCodemotion
 
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
Webinar - Nightmares of a Container Orchestration System - Jorg SchadWebinar - Nightmares of a Container Orchestration System - Jorg Schad
Webinar - Nightmares of a Container Orchestration System - Jorg SchadCodemotion
 
EMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker PlatformEMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker Platform{code}
 
Which cloud(s) & why? Defining Clouds and Best Practices
Which cloud(s) & why? Defining Clouds and Best PracticesWhich cloud(s) & why? Defining Clouds and Best Practices
Which cloud(s) & why? Defining Clouds and Best PracticesPaul Weiss
 
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...MongoDB
 
Getting Started with JDK Mission Control
Getting Started with JDK Mission ControlGetting Started with JDK Mission Control
Getting Started with JDK Mission ControlMarcus Hirt
 

Similaire à New Repository in AEM 6 by Michael Marth (20)

SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptx
 
S903 palla
S903 pallaS903 palla
S903 palla
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February
 
Elastic build environment
Elastic build environmentElastic build environment
Elastic build environment
 
AEM Communities 6.1 - MongoSV '15
AEM Communities 6.1 - MongoSV '15AEM Communities 6.1 - MongoSV '15
AEM Communities 6.1 - MongoSV '15
 
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM Communities
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM CommunitiesMongoDB Days Silicon Valley: Using MongoDB with Adobe AEM Communities
MongoDB Days Silicon Valley: Using MongoDB with Adobe AEM Communities
 
Automating a PostgreSQL High Availability Architecture with Ansible
Automating a PostgreSQL High Availability Architecture with AnsibleAutomating a PostgreSQL High Availability Architecture with Ansible
Automating a PostgreSQL High Availability Architecture with Ansible
 
Securing Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - AdobeSecuring Containers - Sathyajit Bhat - Adobe
Securing Containers - Sathyajit Bhat - Adobe
 
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...
GDG Cloud Southlake #20:Stefano Doni: Kubernetes performance tuning dilemma: ...
 
docker
dockerdocker
docker
 
JavaOne 2014: Next Step in Automation: Elastic Build Environment
JavaOne 2014: Next Step in Automation: Elastic Build EnvironmentJavaOne 2014: Next Step in Automation: Elastic Build Environment
JavaOne 2014: Next Step in Automation: Elastic Build Environment
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud Deployments
 
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
Webinar: Nightmares of a Container Orchestration System - Jorg SchadWebinar: Nightmares of a Container Orchestration System - Jorg Schad
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
 
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
Webinar - Nightmares of a Container Orchestration System - Jorg SchadWebinar - Nightmares of a Container Orchestration System - Jorg Schad
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
 
EMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker PlatformEMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker Platform
 
Which cloud(s) & why? Defining Clouds and Best Practices
Which cloud(s) & why? Defining Clouds and Best PracticesWhich cloud(s) & why? Defining Clouds and Best Practices
Which cloud(s) & why? Defining Clouds and Best Practices
 
What's new in designer
What's new in designerWhat's new in designer
What's new in designer
 
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...
Transforming your Business with Scale-Out Flash: How MongoDB & Flash Accelera...
 
Getting Started with JDK Mission Control
Getting Started with JDK Mission ControlGetting Started with JDK Mission Control
Getting Started with JDK Mission Control
 
EVOLVE'16 | Deploy | Abhishek Dwevedi | Understanding a Typical AEM Deployment
EVOLVE'16 | Deploy | Abhishek Dwevedi | Understanding a Typical AEM DeploymentEVOLVE'16 | Deploy | Abhishek Dwevedi | Understanding a Typical AEM Deployment
EVOLVE'16 | Deploy | Abhishek Dwevedi | Understanding a Typical AEM Deployment
 

Plus de AEM HUB

Microservices for AEM by Maciej Majchrzak
Microservices for AEM by Maciej MajchrzakMicroservices for AEM by Maciej Majchrzak
Microservices for AEM by Maciej MajchrzakAEM HUB
 
When dispatcher caching is not enough by Jakub Wądołowski
When dispatcher caching is not enough by Jakub WądołowskiWhen dispatcher caching is not enough by Jakub Wądołowski
When dispatcher caching is not enough by Jakub WądołowskiAEM HUB
 
PhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony RumseyPhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony RumseyAEM HUB
 
Integrating Apache Wookie with AEM by Rima Mittal and Ankit Gubrani
Integrating Apache Wookie with AEM by Rima Mittal and Ankit GubraniIntegrating Apache Wookie with AEM by Rima Mittal and Ankit Gubrani
Integrating Apache Wookie with AEM by Rima Mittal and Ankit GubraniAEM HUB
 
Mastering the Sling Rewriter by Justin Edelson
Mastering the Sling Rewriter by Justin EdelsonMastering the Sling Rewriter by Justin Edelson
Mastering the Sling Rewriter by Justin EdelsonAEM HUB
 
Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...AEM HUB
 
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...AEM HUB
 
How do you build flexible platforms that focuses on business needs? by Fahim...
How do you build flexible platforms that focuses on business needs?  by Fahim...How do you build flexible platforms that focuses on business needs?  by Fahim...
How do you build flexible platforms that focuses on business needs? by Fahim...AEM HUB
 
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...AEM HUB
 
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger Marsen
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger MarsenAdobe Marketing Cloud Integrations: Myth or Reality? by Holger Marsen
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger MarsenAEM HUB
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt AEM HUB
 
When Sightly Meets Slice by Tomasz Niedźwiedź
When Sightly Meets Slice by Tomasz NiedźwiedźWhen Sightly Meets Slice by Tomasz Niedźwiedź
When Sightly Meets Slice by Tomasz NiedźwiedźAEM HUB
 
Creativity without comprise by Cleve Gibbon
Creativity without comprise by Cleve Gibbon Creativity without comprise by Cleve Gibbon
Creativity without comprise by Cleve Gibbon AEM HUB
 
REST in AEM by Roy Fielding
REST in AEM by Roy FieldingREST in AEM by Roy Fielding
REST in AEM by Roy FieldingAEM HUB
 
Adobe Summit 2015 - Penguin Random House - Accelerating Digital Transformation
Adobe Summit 2015 - Penguin Random House - Accelerating Digital TransformationAdobe Summit 2015 - Penguin Random House - Accelerating Digital Transformation
Adobe Summit 2015 - Penguin Random House - Accelerating Digital TransformationAEM HUB
 
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...AEM HUB
 
Sightly Beautiful Markup by Senol Tas
Sightly Beautiful Markup by Senol Tas Sightly Beautiful Markup by Senol Tas
Sightly Beautiful Markup by Senol Tas AEM HUB
 
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaOrganizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaAEM HUB
 
Rapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiRapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiAEM HUB
 
AEM 5.6.1 e-Commerce Integration by Meryll Blanchet
AEM 5.6.1 e-Commerce Integration by Meryll BlanchetAEM 5.6.1 e-Commerce Integration by Meryll Blanchet
AEM 5.6.1 e-Commerce Integration by Meryll BlanchetAEM HUB
 

Plus de AEM HUB (20)

Microservices for AEM by Maciej Majchrzak
Microservices for AEM by Maciej MajchrzakMicroservices for AEM by Maciej Majchrzak
Microservices for AEM by Maciej Majchrzak
 
When dispatcher caching is not enough by Jakub Wądołowski
When dispatcher caching is not enough by Jakub WądołowskiWhen dispatcher caching is not enough by Jakub Wądołowski
When dispatcher caching is not enough by Jakub Wądołowski
 
PhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony RumseyPhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony Rumsey
 
Integrating Apache Wookie with AEM by Rima Mittal and Ankit Gubrani
Integrating Apache Wookie with AEM by Rima Mittal and Ankit GubraniIntegrating Apache Wookie with AEM by Rima Mittal and Ankit Gubrani
Integrating Apache Wookie with AEM by Rima Mittal and Ankit Gubrani
 
Mastering the Sling Rewriter by Justin Edelson
Mastering the Sling Rewriter by Justin EdelsonMastering the Sling Rewriter by Justin Edelson
Mastering the Sling Rewriter by Justin Edelson
 
Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...Building Quality into the AEM Publication Workflow with Active Standards by D...
Building Quality into the AEM Publication Workflow with Active Standards by D...
 
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...
How to build a Social Intranet with Adobe Sites and 3rd Party products ... us...
 
How do you build flexible platforms that focuses on business needs? by Fahim...
How do you build flexible platforms that focuses on business needs?  by Fahim...How do you build flexible platforms that focuses on business needs?  by Fahim...
How do you build flexible platforms that focuses on business needs? by Fahim...
 
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
Adobe Managed Services: Complicated Cloud Deployments by Adam Pazik, Mike Til...
 
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger Marsen
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger MarsenAdobe Marketing Cloud Integrations: Myth or Reality? by Holger Marsen
Adobe Marketing Cloud Integrations: Myth or Reality? by Holger Marsen
 
Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt Responsive Websites and Grid-Based Layouts by Gabriel Walt
Responsive Websites and Grid-Based Layouts by Gabriel Walt
 
When Sightly Meets Slice by Tomasz Niedźwiedź
When Sightly Meets Slice by Tomasz NiedźwiedźWhen Sightly Meets Slice by Tomasz Niedźwiedź
When Sightly Meets Slice by Tomasz Niedźwiedź
 
Creativity without comprise by Cleve Gibbon
Creativity without comprise by Cleve Gibbon Creativity without comprise by Cleve Gibbon
Creativity without comprise by Cleve Gibbon
 
REST in AEM by Roy Fielding
REST in AEM by Roy FieldingREST in AEM by Roy Fielding
REST in AEM by Roy Fielding
 
Adobe Summit 2015 - Penguin Random House - Accelerating Digital Transformation
Adobe Summit 2015 - Penguin Random House - Accelerating Digital TransformationAdobe Summit 2015 - Penguin Random House - Accelerating Digital Transformation
Adobe Summit 2015 - Penguin Random House - Accelerating Digital Transformation
 
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...
Socialize your Exceptional Web Experience – Adobe AEM & IBM Connections by He...
 
Sightly Beautiful Markup by Senol Tas
Sightly Beautiful Markup by Senol Tas Sightly Beautiful Markup by Senol Tas
Sightly Beautiful Markup by Senol Tas
 
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz KitaOrganizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
Organizing the world of CQ rest infinitive possibilities by Arkadiusz Kita
 
Rapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub WadolowskiRapid CQ deployments by Jakub Wadolowski
Rapid CQ deployments by Jakub Wadolowski
 
AEM 5.6.1 e-Commerce Integration by Meryll Blanchet
AEM 5.6.1 e-Commerce Integration by Meryll BlanchetAEM 5.6.1 e-Commerce Integration by Meryll Blanchet
AEM 5.6.1 e-Commerce Integration by Meryll Blanchet
 

Dernier

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Dernier (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

New Repository in AEM 6 by Michael Marth

  • 1. New Repository in AEM 6 and other goodies for developers Michael Marth, Adobe
  • 2. About @michaelmarth Senior Engineering Manager at Adobe Responsible for Granite platform
  • 3. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Before we start 3 Certifications
  • 4. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Scalability Oak 4 AEM 6.0 Content Repository
  • 5. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. AEM 6.0 Content Repository Goals  Scalability  Big repositories  Distributed, many cluster nodes  Write throughput  Parallel writes  Write performance  Many child nodes  Many ACLs 5 Project “Oak”  aka Jackrabbit 3, all open source  Apache Software Foundation http://jackrabbit.apache.org/oak/  Implementation of the JCR spec, JSR-283 Your apps run unchanged
  • 6. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Architecture 6 JCR oak-core Micro kernel Oak API Micro kernel API
  • 7. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Microkernel choose according to your scalability and performance requirements 7 jjjJCR Content Repository Persistence AEM Performance Optimized and Made for Scale
  • 8. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Node Store Where nodes get stored 8 Nodes Binaries • Tar MK Tar files, locally • MongoMK MongoDB • … (other are WIP) oak-core JCR
  • 9. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Stores Where the binary data gets stored 9 • File System (local, NAS, SAN) shareable • S3 for AWS deployments • In Tar files easier backup and ops • In MongoDB easier backup and ops oak-core JCR Nodes Binaries
  • 10. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. TarMK Memory-mapped files 10 92 GB unused CQ5.x Tar PM 100GB RAM in Server 8GB JVM AEM6 Tar MK: 100GB RAM in Server 8GB JVM 92 GB off-heap used for running the repo from RAM
  • 11. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. MongoMK Cluster Deployment Topologies 11 MongoS AEM with Oak MongoD Primary MongoD Secondary MongoD Secondary MongoDB replication r/w r r MongoS AEM with Oak MongoS AEM with Oak ShareNothing ShareNothing
  • 12. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Micro Kernels Which one shall I use? 12 AEM6 Author default: TarMK local, fast, easy to operate “I need reliability”: TarMK + Failover instance HTTP-transported copy of instance, failover switch e.g. Nagios “I need scalability”: MongoMK Cluster Scale CPU (many AEM instances) Scale read throughput (many Mongo replicas) Scale globally (distribute replicas globally) “I cannot change the repository”: Remain on CRX2 Cluster Supported, but deprecated
  • 13. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Micro Kernels Which one shall I use? 13 AEM6 Publish Primary use case is Publishing: TarMK as a “Farm” (independent instances) fast, independent, easy to operate Primary use case is User Generated Content: MongoMK in a Publish Cluster all Publish instances running on same MongoDB
  • 14. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Search Pluggable Index Providers 14 • Property Index Provider stored in repo, backup’ed sync/async re-indexable asynchronously ordered indexes • Lucene full-text extraction stored in data store • Solr in JVM (OSGi runtime) or remote (for production) native queries language exposed oak-core JCR MK
  • 15. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Search Configurable Indexes 15 • Index Definition via nodes not everything indexed by default anymore allows smaller, specialized, faster indexes no need to index nodes you do not search for • In AEM: pre-configured indexes for AEM itself • Define custom indexes for your application’s needs without an index the repo will be traversed on a query oak-core JCR MK
  • 16. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Numbers Performance & Scalability 16 TarMK running on my MacBook (i.e. totally unscientific) • add nodes, session.save() for each node: xxx nodes added / sec • add nodes, batch save(): xxx nodes added / sec • add property, catch save(): xxx properties added / sec • import files from Wikipedia, flat hierarchy: MongoMK running on our Jenkins server • 1 Oak instance on MongoMK: nodes added / sec… • 3 Oak instances on MongoMK: nodes added / sec… (factor yyy) • 5 Oak instances on MongoMK: nodes added / sec…(factor yyy)
  • 17. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Performance & Scalability Some Hints 17 Observations in a Cluster • Many Oak instances, high write throughput needed • Be mindful of observation listeners • Only listen to local events • Restrict paths you listen on Many child nodes • Many child nodes, high write throughput • Be mindful of sorted node types • nt:unstructured is sorted • oak:unstructured is not
  • 18. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Sys Admins 18 Operations Dashboard
  • 19. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency Granite Operations Dashboard provides control over system health, diagnosis and maintenance automation, efficiently and extensible. 19 Main features: • System health overview at a glance • Reducing time to find, analyze and fix issues • One-Click System Status to help file AEM Support tickets • Maintenance automation to reduce project operations
  • 20. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 20
  • 21. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 21
  • 22. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22
  • 23. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 23 DEMO
  • 24. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Sys Admins 24 One-Click Setup
  • 25. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency One-Click Setup instantly fires up AEM instances in the cloud right 25 Main features: • Ready-made AEM configurations • Spins up machines in AWS – you maintain full control of the machines
  • 26. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 26
  • 27. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 27
  • 28. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 28
  • 29. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 29
  • 30. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 30 DEMO
  • 31. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Developers 31 Developer Mode
  • 32. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency Developer Mode 32 Main features: • Inspect component performance right in the page • Run automated tests • Inspect component errors right in the context of the page
  • 33. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 33
  • 34. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34
  • 35. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 35
  • 36. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 36
  • 37. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37 DEMO
  • 38. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Developers 38 Eclipse Tooling
  • 39. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 39 DEMO
  • 40. What else is coming up
  • 41. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41 Sightly Beautiful Markup
  • 42. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 42 Mobile PhoneGap Enterprise
  • 43. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 43 one more thing™
  • 44. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Sneak Peak 44 Granite.JS aka AEM Micro Engine
  • 45. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Granite Javascript Platform 45 Main features: • Lightweight, scripting server stack • REST based content-driven web framework for server-side JavaScript development • Runs Sightly • Based on Node.js
  • 46. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Architecture 46 jjj Coral UI / Sightly Sling AEM Granite/AEM - Java Oak REST Microkernel (Java) OSGi jjj Coral UI / Sightly Sling.JS Granite.JS – Node.JS Repository REST Microkernel (C) NPM
  • 47. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Use Case (I) – Web Developer in AEM Projects 47 UI Dev codes Sightly, CSS, etc Brackets Grunt Granite.JS Java Dev codes Java, OSGi services Eclipse Maven Granite/AEM gitpush Maven AEM Production Pkg
  • 48. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 48 DEMO
  • 49. Thank for your attention