SlideShare a Scribd company logo
1 of 44
New Repository in AEM 6
and other goodies for developers
Michael Marth
Sr. Engineering Manager at Adobe
Responsible for Granite platform
Twitter @michaelmarth
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Before we start
2
Certifications
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Scalability Oak
3
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
4
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
5
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
6
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
7
Nodes
• 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
8
• In Tar files
easier backup and ops
• In MongoDB
easier backup and ops
• File System (local, NAS,
SAN)
shareable
• S3
for AWS deployments
oak-core
JCR
Binaries
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
TarMK Memory-mapped files
9
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
10
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?
11
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?
12
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
13
• Property Index Provider
stored in repo, backup’ed
sync/async
re-indexable asynchronously
• Lucene
full-text extraction
stored in data store
• Solr
in JVM (OSGi runtime) or remote (for
production)
native queries language exposed
oak-core
JCR
MicroKernel
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Search Configurable Indexes
14
• 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
MicroKernel
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Numbers Performance (lower is better)
15
x2 x12
x5
x8
x3
x5
x2 x90
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Numbers Scalability (higher is better)
16
x5 means linear scalability
x5
x5
x5
x5
x5
x5
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 18
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Sys Admins
19
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.
20
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. 24
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Sys Admins
26
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
27
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. 32
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 33
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Developers
34
Eclipse Tooling
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Project Efficiency Eclipse Tooling
35
Main features:
• Integrated with Maven Tooling, CRX Packaging & Debugger
• Work with Content in Eclipse
• Developed in the open (ASF Sling)
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 36
DEMO
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Efficiency We ♡ Developers
38
Developer Mode
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Project Efficiency Developer Mode
39
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. 44
DEMO
What else is coming up
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 46
Sightly
Beautiful Markup
Senol
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 47
Mobile
PhoneGap Enterprise
Bruce
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 48
AEM6
Best Of
Cedric
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 49
one more
thing™
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Sneak Peak
50
Granite.JS
aka AEM Micro Engine
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Granite.JS Granite Javascript Platform
51
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
52
jjj
Coral UI / Sightly
Sling
AEM
Granite/AEM - Java
Oak
REST
Microkernel (Java)
OSGi
jjj
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
53
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. 54
Totally
Preview
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 55
DEMO
Enjoy AEM Hub

More Related Content

What's hot

Aem asset optimizations & best practices
Aem asset optimizations & best practicesAem asset optimizations & best practices
Aem asset optimizations & best practicesKanika 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
 
Scaling Drupal & Deployment in AWS
Scaling Drupal & Deployment in AWSScaling Drupal & Deployment in AWS
Scaling Drupal & Deployment in AWS永对 陈
 
AEM (CQ) Dispatcher Caching Webinar 2013
AEM (CQ) Dispatcher Caching Webinar 2013AEM (CQ) Dispatcher Caching Webinar 2013
AEM (CQ) Dispatcher Caching Webinar 2013Andrew Khoury
 
CIRCUIT 2015 - Monitoring AEM
CIRCUIT 2015 - Monitoring AEMCIRCUIT 2015 - Monitoring AEM
CIRCUIT 2015 - Monitoring AEMICF CIRCUIT
 
AEM (CQ) Dispatcher Security and CDN+Browser Caching
AEM (CQ) Dispatcher Security and CDN+Browser CachingAEM (CQ) Dispatcher Security and CDN+Browser Caching
AEM (CQ) Dispatcher Security and CDN+Browser CachingAndrew Khoury
 
Performance Testing using Real Browsers with JMeter & Webdriver
Performance Testing using Real Browsers with JMeter & WebdriverPerformance Testing using Real Browsers with JMeter & Webdriver
Performance Testing using Real Browsers with JMeter & WebdriverBlazeMeter
 
Aem dispatcher – tips & tricks
Aem dispatcher – tips & tricksAem dispatcher – tips & tricks
Aem dispatcher – tips & tricksAshokkumar T A
 
Trials and Tribulations of Managed Metadata
Trials and Tribulations of Managed MetadataTrials and Tribulations of Managed Metadata
Trials and Tribulations of Managed MetadataScott Hoag
 
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014Amazon Web Services
 
MongoDB in the Clouds
MongoDB in the CloudsMongoDB in the Clouds
MongoDB in the CloudsUri Cohen
 
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksCIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksICF CIRCUIT
 
The secret life of a dispatcher (Adobe CQ AEM)
The secret life of a dispatcher (Adobe CQ AEM)The secret life of a dispatcher (Adobe CQ AEM)
The secret life of a dispatcher (Adobe CQ AEM)Venugopal Gummadala
 
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...devang-dsshah
 
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresMaster Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresFrançois Le Droff
 
Azure Nights August2017
Azure Nights August2017Azure Nights August2017
Azure Nights August2017Michael Frank
 
Heap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesHeap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesKanika Gera
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaSCloudBees
 
Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Aviran Mordo
 

What's hot (20)

Aem asset optimizations & best practices
Aem asset optimizations & best practicesAem asset optimizations & best practices
Aem asset optimizations & best practices
 
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
 
Scaling Drupal & Deployment in AWS
Scaling Drupal & Deployment in AWSScaling Drupal & Deployment in AWS
Scaling Drupal & Deployment in AWS
 
AEM (CQ) Dispatcher Caching Webinar 2013
AEM (CQ) Dispatcher Caching Webinar 2013AEM (CQ) Dispatcher Caching Webinar 2013
AEM (CQ) Dispatcher Caching Webinar 2013
 
CIRCUIT 2015 - Monitoring AEM
CIRCUIT 2015 - Monitoring AEMCIRCUIT 2015 - Monitoring AEM
CIRCUIT 2015 - Monitoring AEM
 
AEM (CQ) Dispatcher Security and CDN+Browser Caching
AEM (CQ) Dispatcher Security and CDN+Browser CachingAEM (CQ) Dispatcher Security and CDN+Browser Caching
AEM (CQ) Dispatcher Security and CDN+Browser Caching
 
Performance Testing using Real Browsers with JMeter & Webdriver
Performance Testing using Real Browsers with JMeter & WebdriverPerformance Testing using Real Browsers with JMeter & Webdriver
Performance Testing using Real Browsers with JMeter & Webdriver
 
Aem dispatcher – tips & tricks
Aem dispatcher – tips & tricksAem dispatcher – tips & tricks
Aem dispatcher – tips & tricks
 
Trials and Tribulations of Managed Metadata
Trials and Tribulations of Managed MetadataTrials and Tribulations of Managed Metadata
Trials and Tribulations of Managed Metadata
 
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014
(WEB307) Scalable Site Management Using AWS OpsWorks | AWS re:Invent 2014
 
MongoDB in the Clouds
MongoDB in the CloudsMongoDB in the Clouds
MongoDB in the Clouds
 
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksCIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
 
The secret life of a dispatcher (Adobe CQ AEM)
The secret life of a dispatcher (Adobe CQ AEM)The secret life of a dispatcher (Adobe CQ AEM)
The secret life of a dispatcher (Adobe CQ AEM)
 
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...
Implementing Large Scale Digital Asset Repositories with Adobe Experience Man...
 
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructuresMaster Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
Master Chef class: learn how to quickly cook delightful CQ/AEM infrastructures
 
Resumen - Microsoft Build 2021
Resumen - Microsoft Build 2021Resumen - Microsoft Build 2021
Resumen - Microsoft Build 2021
 
Azure Nights August2017
Azure Nights August2017Azure Nights August2017
Azure Nights August2017
 
Heap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World IssuesHeap Dump Analysis - AEM: Real World Issues
Heap Dump Analysis - AEM: Real World Issues
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaS
 
Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015Scaling wix with microservices and multi cloud - 2015
Scaling wix with microservices and multi cloud - 2015
 

Viewers also liked

Hosting huge amount of binaries in JCR
Hosting huge amount of binaries in JCRHosting huge amount of binaries in JCR
Hosting huge amount of binaries in JCRWoonsan Ko
 
CRX2Oak - all the secrets of repository migration
CRX2Oak - all the secrets of repository migrationCRX2Oak - all the secrets of repository migration
CRX2Oak - all the secrets of repository migrationTomasz Rękawek
 
An Overview of ModeShape
An Overview of ModeShapeAn Overview of ModeShape
An Overview of ModeShapeRandall Hauch
 
AEM Hub - on the road with AEM
AEM Hub - on the road with AEMAEM Hub - on the road with AEM
AEM Hub - on the road with AEMDavid Nuescheler
 
JCR - Java Content Repositories
JCR - Java Content RepositoriesJCR - Java Content Repositories
JCR - Java Content RepositoriesCarsten Ziegeler
 
Azure Machine Learning 101
Azure Machine Learning 101Azure Machine Learning 101
Azure Machine Learning 101Renato Jovic
 
MLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning LibraryMLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning Libraryjeykottalam
 
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
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine LearningRahul Jain
 
Introduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web ServicesIntroduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web ServicesAmazon Web Services
 
Introduction to Big Data/Machine Learning
Introduction to Big Data/Machine LearningIntroduction to Big Data/Machine Learning
Introduction to Big Data/Machine LearningLars Marius Garshol
 

Viewers also liked (15)

Hosting huge amount of binaries in JCR
Hosting huge amount of binaries in JCRHosting huge amount of binaries in JCR
Hosting huge amount of binaries in JCR
 
CRX2Oak - all the secrets of repository migration
CRX2Oak - all the secrets of repository migrationCRX2Oak - all the secrets of repository migration
CRX2Oak - all the secrets of repository migration
 
JSOP in 60 seconds
JSOP in 60 secondsJSOP in 60 seconds
JSOP in 60 seconds
 
An Overview of ModeShape
An Overview of ModeShapeAn Overview of ModeShape
An Overview of ModeShape
 
AEM Hub - on the road with AEM
AEM Hub - on the road with AEMAEM Hub - on the road with AEM
AEM Hub - on the road with AEM
 
JCR - Java Content Repositories
JCR - Java Content RepositoriesJCR - Java Content Repositories
JCR - Java Content Repositories
 
Introduction to JCR
Introduction to JCR Introduction to JCR
Introduction to JCR
 
Azure Machine Learning 101
Azure Machine Learning 101Azure Machine Learning 101
Azure Machine Learning 101
 
MLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning LibraryMLlib: Spark's Machine Learning Library
MLlib: Spark's Machine Learning Library
 
Content migration to AEM
Content migration to AEMContent migration to AEM
Content migration to AEM
 
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
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
What's New with AWS Lambda
What's New with AWS LambdaWhat's New with AWS Lambda
What's New with AWS Lambda
 
Introduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web ServicesIntroduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web Services
 
Introduction to Big Data/Machine Learning
Introduction to Big Data/Machine LearningIntroduction to Big Data/Machine Learning
Introduction to Big Data/Machine Learning
 

Similar to Aem hub oak 0.2 full

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
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February markghiasy
 
CQ5.x Maintenance Webinar 2013
CQ5.x Maintenance Webinar 2013CQ5.x Maintenance Webinar 2013
CQ5.x Maintenance Webinar 2013Andrew Khoury
 
Integration Testing in AEM
Integration Testing in AEMIntegration Testing in AEM
Integration Testing in AEMconnectwebex
 
SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSumanMitra22
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationYudi Herdiana
 
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
 
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...Sumeet Pareek
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdam Pazik
 
A301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringMichael Dawson
 
Adobe Ask the AEM Community Expert Session Oct 2016
Adobe Ask the AEM Community Expert Session Oct 2016Adobe Ask the AEM Community Expert Session Oct 2016
Adobe Ask the AEM Community Expert Session Oct 2016AdobeMarketingCloud
 
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
 
1 architecture & design
1   architecture & design1   architecture & design
1 architecture & designMark Swarbrick
 
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...timfanelli
 
Ansible, MongoDB Ops Manager and AWS v1.1
Ansible, MongoDB Ops Manager and AWS v1.1Ansible, MongoDB Ops Manager and AWS v1.1
Ansible, MongoDB Ops Manager and AWS v1.1Michael Lynn
 

Similar to Aem hub oak 0.2 full (20)

S903 palla
S903 pallaS903 palla
S903 palla
 
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
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February
 
CQ5.x Maintenance Webinar 2013
CQ5.x Maintenance Webinar 2013CQ5.x Maintenance Webinar 2013
CQ5.x Maintenance Webinar 2013
 
Integration Testing in AEM
Integration Testing in AEMIntegration Testing in AEM
Integration Testing in AEM
 
SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptx
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for Consolidation
 
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
 
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...
Drupal Solutions Comparison For Multiple Sites With Related Content - Acquia ...
 
What's new in designer
What's new in designerWhat's new in designer
What's new in designer
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud Deployments
 
A301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoring
 
Adobe Ask the AEM Community Expert Session Oct 2016
Adobe Ask the AEM Community Expert Session Oct 2016Adobe Ask the AEM Community Expert Session Oct 2016
Adobe Ask the AEM Community Expert Session Oct 2016
 
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: ...
 
Code One 2018 maven
Code One 2018   mavenCode One 2018   maven
Code One 2018 maven
 
1 architecture & design
1   architecture & design1   architecture & design
1 architecture & design
 
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...
Three Key Concepts for Understanding JSR-352: Batch Programming for the Java ...
 
The great 8 of ODA
The great 8 of ODAThe great 8 of ODA
The great 8 of ODA
 
Ansible, MongoDB Ops Manager and AWS v1.1
Ansible, MongoDB Ops Manager and AWS v1.1Ansible, MongoDB Ops Manager and AWS v1.1
Ansible, MongoDB Ops Manager and AWS v1.1
 

Aem hub oak 0.2 full

  • 1. New Repository in AEM 6 and other goodies for developers Michael Marth Sr. Engineering Manager at Adobe Responsible for Granite platform Twitter @michaelmarth
  • 2. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Before we start 2 Certifications
  • 3. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Scalability Oak 3 AEM 6.0 Content Repository
  • 4. © 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 4 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
  • 5. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Architecture 5 JCR oak-core Micro kernel Oak API Micro kernel API
  • 6. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Microkernel choose according to your scalability and performance requirements 6 jjjJCR Content Repository Persistence AEM Performance Optimized and Made for Scale
  • 7. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Node Store Where nodes get stored 7 Nodes • Tar MK Tar files, locally • MongoMK MongoDB • … (other are WIP) oak-core JCR
  • 8. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Stores Where the binary data gets stored 8 • In Tar files easier backup and ops • In MongoDB easier backup and ops • File System (local, NAS, SAN) shareable • S3 for AWS deployments oak-core JCR Binaries
  • 9. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. TarMK Memory-mapped files 9 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
  • 10. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. MongoMK Cluster Deployment Topologies 10 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
  • 11. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Micro Kernels Which one shall I use? 11 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
  • 12. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Micro Kernels Which one shall I use? 12 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
  • 13. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Search Pluggable Index Providers 13 • Property Index Provider stored in repo, backup’ed sync/async re-indexable asynchronously • Lucene full-text extraction stored in data store • Solr in JVM (OSGi runtime) or remote (for production) native queries language exposed oak-core JCR MicroKernel
  • 14. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Search Configurable Indexes 14 • 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 MicroKernel
  • 15. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Numbers Performance (lower is better) 15 x2 x12 x5 x8 x3 x5 x2 x90
  • 16. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Numbers Scalability (higher is better) 16 x5 means linear scalability x5 x5 x5 x5 x5 x5
  • 17. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 18
  • 18. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Sys Admins 19 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. 20 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. 24 DEMO
  • 21. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25
  • 22. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Sys Admins 26 One-Click Setup
  • 23. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency One-Click Setup instantly fires up AEM instances in the cloud right 27 Main features: • Ready-made AEM configurations • Spins up machines in AWS – you maintain full control of the machines
  • 24. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 32 DEMO
  • 25. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 33
  • 26. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Developers 34 Eclipse Tooling
  • 27. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency Eclipse Tooling 35 Main features: • Integrated with Maven Tooling, CRX Packaging & Debugger • Work with Content in Eclipse • Developed in the open (ASF Sling)
  • 28. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 36 DEMO
  • 29. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37
  • 30. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Efficiency We ♡ Developers 38 Developer Mode
  • 31. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Project Efficiency Developer Mode 39 Main features: • Inspect component performance right in the page • Run automated tests • Inspect component errors right in the context of the page
  • 32. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 44 DEMO
  • 33. What else is coming up
  • 34. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 46 Sightly Beautiful Markup Senol
  • 35. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 47 Mobile PhoneGap Enterprise Bruce
  • 36. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 48 AEM6 Best Of Cedric
  • 37. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 49 one more thing™
  • 38. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Sneak Peak 50 Granite.JS aka AEM Micro Engine
  • 39. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Granite Javascript Platform 51 Main features: • Lightweight, scripting server stack • REST based content-driven web framework for server-side JavaScript development • Runs Sightly • Based on Node.js
  • 40. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Architecture 52 jjj Coral UI / Sightly Sling AEM Granite/AEM - Java Oak REST Microkernel (Java) OSGi jjj Sightly Sling.JS Granite.JS – Node.JS Repository REST Microkernel (C) NPM
  • 41. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Granite.JS Use Case (I) – Web Developer in AEM Projects 53 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
  • 42. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 54 Totally Preview
  • 43. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 55 DEMO