SlideShare une entreprise Scribd logo
1  sur  42
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
ADOBE
CUSTOMER
BROWN
BAG
SERIES
Andrew Khoury & Sham Hassan Chikkegowda
Customer Support Engineers, Adobe
For the best listening experience, we recommend using a
headset
TODAY’S TOPIC: AEM Monitoring and Maintenance
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What’s Covered
1. Best practices for maintaining AEM instances.
2. Tips and tricks for proactive things to monitor.
3. Tips and tricks for reducing downtime when instances are corrupted.
4. Common pitfalls to avoid.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Topics covered
 Replication
DataStore Garbage Collection
Tar PM Optimization
Workflow



© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 4
Optimizing replication
Replication Tuning and
Monitoring
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Monitoring Replication
• Replication can be monitored using JMX
• Each agent exposes an object
• The objects expose:
- If the agent is enabled
- If the queue is blocked, paused or invalid
- The number of entries in the queue
- Timing information
5
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Configure a replication.log
6
Why?
• Keeps error.log from getting bloated
• Isolates replication errors and warnings
How?
• Add an Apache Sling Logging Logger:
- Log File: logs/replication.log
- Log Level: Info
- Logger: com.day.cq.replication
• Add an Apache Sling Logging Writer (for log rotation)
- Log File: logs/replication.log
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 7
Replication monitoring via
JMX And Log ConfigurationDEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Initializing and Queuing
8
User activates
/content/geometrixx-outdoors/en/support
Durbo
package
/var/replication/data
Content is packaged
OSGi
event
is fired
Replication
AgentManager
handles the event
Sling Job Handler
queues/stores the job
slingevent:Job
/var/eventing/jobs
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Processing Jobs
9
Sling
Job Handler
Process the job through the
correct TransportHandler
ERROR: Queue stuck
slingevent:Job
node
/var/eventing/jobs
Read job from queue
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Replication: Troubleshooting
The queue can get stuck if:
• The Job Handler fails.
• Error while sending the data.
- Failure to create Durbo package from /var/replication/data
- Issue in class loading, network malfunction, etc.
• The receiving end fails to respond.
- Publish instance is experiencing high traffic or is unstable.
• The receiving end fails to import / receive the
replication during transport. For example:
- Failure to read the durbo package
- Failure to save/import the content
10
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
Optimizations:
• Enable “File Storage” of replication durbo packages:
- Go to http://host:port/system/console/configMgr and login as admin
- Find “Adobe Granite Replication Content Factory” and click Edit
- Check the “replication.content.useFileStorage.name” checkbox and Save
• Set the connection timeout and socket timeout in the agent Extended
configuration to avoid socketConnect and socketRead hang situations.
- socketConnect can be 30 seconds = 30000
- socketRead timeout can be 10 minutes = 600000
11
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
12
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
Optimizations:
• In the “Triggers” tab of the replication agent:
- “No Status Update” - if you do not need a status to track that the replication happened.
- “No Versioning” - if you do not need versions of the pages or assets generated on
activations.
13
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Optimizing Replication
14
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 15
Reducing disk space usage
DataStore Garbage Collection
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is the DataStore?
The DataStore (default implementation):
• Stores binary JCR properties > 4KB (default).
• Only allows files to be added.
• Stores files under crx-quickstart/repository/repository/datastore.
• Files are referenced by the JCR internal node record (persistence manager
bundles).
16
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How does the DataStore work?
1. A unique id is generated from contents of the file.
2. The id is used for the filename.
3. The datastore directory structure is built like this:
• datastore/{1st 2 chars id}/{2nd 2 chars id}/{3rd 2 chars id}/{id}
• E.g.
datastore/a2/b9/86/a2b98676377b947244bb954769def9b4fd625daa
4. Due to this, files are stored uniquely so the same file will only be stored
once.
17
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore Example
User uploads the same image to two different locations
18
AEM.png
Upload
Upload
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
a2b98676377b947244bb954769def9b4fd625daa
repository/repository/datastore
86
b9
a2
DataStore Example
19
JCR Node:
/content/dam/AEM.png/renditions/original/jcr:content/data property
JCR Node:
/content/dam/geometrixx-
media/AEM.png/renditions/original/jcr:content/data property
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
How does DataStore GC work?
DataStore GC (Garbage Collection) is the only way to delete DataStore files.
How does it work?
• “Scan” Phase
- Read all nodes in the JCR
- Update the timestamp of each of the referenced datastore files.
• “Delete” Phase
- Find all files with timestamp older than when it started the scan phase and deletes
them.
20
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore GC: Avoiding common Pitfalls
Before running DataStore GC, make sure:
• You have a backup of the datastore directory
• No issues with setting timestamps (this especially applies of your datastore is
on a network storage).
• Date and time is in sync between network storage and CQ server
• CQ5.3 or 5.4 with CRX2.2 - at least hotfix 2.2.0.70.
• CQ5.6.1 - do *NOT* use stopDataStoreGarbageCollection in JMX to stop the
GC process.
21
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22
How to run DataStore GCDEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
DataStore GC
This error means you are missing a file from your datastore:
“DataStoreException: Record not found”
If you see that error then do not run datastore gc until you have restored the missing files.
To identify all missing files:
• Go to /crx/explorer/index.jsp and login as admin (/crx/index.jsp CQ5.4 and earlier).
• Browse to "Repository Configuration" => "Check Repository”.
• Check the "Data store consistency check" box.
• Click “Run”
• This will output a list of nodes referencing the missing files along with the path of the missing file.
• Since the files are unique, you can copy the missing files over from any other AEM (CQ) instances that
the same file.
See this article for more details:
• http://helpx.adobe.com/crx/kb/DataStoreGarbageCollection.html
23
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 24
How to run DataStore
Consistency Check
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25
Tar Persistence Manager
Optimization
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Part 2: Topics Covered
TarPM Optimization
- What is the TarPM & TarPM optimization?
- Best practices for maintaining AEM Instances
- Tips and tricks for proactive things to monitor
- Tips and tricks for reducing downtime & Speed up the process
Workflow Monitoring
- Supported Features
- Best practices for maintaining AEM Instances.
- Tips and tricks for proactive things to monitor
26
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is TarPM?
27
data_00000.tar
<cq_home>/crx-quickstart/repository/workspaces/crx.defau
data_00001.tar
Bundle 01
Bundle 02
Bundle 03
Bundle 04
• CRX Stores nodes and properties as one entity (bundle) in data tar file using Tar
Persistance Manager (Tar PM).
• Tar PM model is append only.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What is TarPM Optimization?
• Tar Optimization is a process which cleans up the old unreferenced data
to improve the overall performance & reduce disk usage.
28
bundle03
bundle04
bundle11
bundle14
data_00003.tar
TAR
OPTIMIZATIO
N
bundle01
bundle02
bundle03
bundle04
data_00001.tar
bundle11
bundle12
bundle13
bundle14
data_00002.tar
Unuse
d data
Deletes old
data tar file.
Deletes old
data tar file.
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Tar file location.
• Default storage location of data tar files are
29
<cq_home>/crx-quickstart/repository
data_00000.tar
data_00001.tar
workspaces
crx.default
version
data_00004.tar
data_00005.tar
data_00010.tar
data_00011.tar
tarJournal
data_00012.tar
data_00013.tar
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Regularly run tar optimization during the low usage hours of your
system.
• Automatic Schedule:-
- By default CRX automatically runs Tar PM optimization in midnight
between 2 AM to 5 AM.
- To reconfigure a scheduled optimization add a param autoOptimizeAt to
PersistenceManager element at repository.xml and workspace.xml.
• <PersistenceManager
class="com.day.crx.persistence.tar.TarPersistenceManager">
<param name="autoOptimizeAt" value="01:00-04:00" />
</PersistenceManager>
30
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Manually execute TarPM optimization from JMX console
31
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Manually by creating an optimization file “optimize.tar” in the desired workspace folder.
32
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for proactive things to monitor
• From JMX console monitor
- TarOptimizationRunningSince:- The
timestamp when the current Tar PM
optimization was started, or 0 if currently not
running.
- TarOptimizationWork:- The remaining
optimization work in KiloBytes.
- TarOptimizationRate:- TarPM optimization
rate in KB/sec.
33
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34
How to monitor Tar
Optimization via JMX client
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for reducing downtime & Speed up the process
• Configure the TarOptimizationDelay property:- Number of milliseconds to sleep after
optimizing one transaction.
• Load the index files into the buffer cache every few minutes, from both the crx.default
and the version directory.
- cat <cq_home>/crx-quickstart/repository/workspaces/crx.default/index*.tar > /dev/null”
- cat <cq_home>/crx-quickstart/repository/version/index*.tar > /dev/null”
• To enable Index in memory option refer
http://dev.day.com/docs/en/crx/current/administering/persistence_managers.html#Configuring the indexInMemory
Property
35
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Common Pitfalls to Avoid
• Scheduling tar optimization to run during the heavy usage hours of your
system.
• If you are optimizing tar files in a cluster, you need to ensure that the
Tar optimization time are set to the same value on all cluster nodes.
• Do not run tar optimization while you are backing up instance.
• Do not run tar optimization when datastore garbage collection is
running.
• Don’t ignore the message “File not found” exception when tar
optimization is running. Please contact daycare.
36
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37
Workflow maintenance and Purge Obsolete
Workflow Data
Workflow Monitoring
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Workflow Purge
• Workflows enable you to automate Experience Manager activities.
• Workflows events generate archived data.
• This data can quickly grow over time as workflows are processed.
• Purging this data on a regular schedule improves system performance.
• In AEM(CQ) 5.6 the Workflow JMX MBean support has been added in
order to maintain workflow system.
38
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Best practices for maintaining AEM Instances
Regularly run workflow purge to
avoid the problems associated with
a large volume of data.
• Using user interface through Felix
console
• Using CURL
• Creating a JMX client that uses
Workflow Mbean
http://helpx.adobe.com/cq/kb/
workflow-monitor-via-jmx.html
39
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Tips and tricks for proactive things to monitor
40
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41
How to monitor workflow
via JMX client
DEMONSTRATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

Contenu connexe

Tendances

The new repository in AEM 6
The new repository in AEM 6The new repository in AEM 6
The new repository in AEM 6Jukka Zitting
 
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
 
Configuring CQ Security
Configuring CQ SecurityConfiguring CQ Security
Configuring CQ Securityconnectwebex
 
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB MongoDB
 
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
 
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management SystemsAEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management SystemsMongoDB
 
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
 
Accelerate your ColdFusion Applications using Caching
Accelerate your ColdFusion Applications using CachingAccelerate your ColdFusion Applications using Caching
Accelerate your ColdFusion Applications using CachingColdFusionConference
 
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheScale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheColdFusionConference
 
Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...ColdFusionConference
 
Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)WordCamp Cape Town
 
Best Practices for WordPress in Enterprise
Best Practices for WordPress in EnterpriseBest Practices for WordPress in Enterprise
Best Practices for WordPress in EnterpriseTaylor Lovett
 
Aem hub oak 0.2 full
Aem hub oak 0.2 fullAem hub oak 0.2 full
Aem hub oak 0.2 fullMichael Marth
 
Presentation on Instant page speed optimization
Presentation on Instant page speed optimizationPresentation on Instant page speed optimization
Presentation on Instant page speed optimizationSanjeev Kumar Jaiswal
 
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on NginxEasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on NginxrtCamp
 
How to scale PHP applications
How to scale PHP applicationsHow to scale PHP applications
How to scale PHP applicationsEnrico Zimuel
 

Tendances (20)

The new repository in AEM 6
The new repository in AEM 6The new repository in AEM 6
The new repository in AEM 6
 
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...
 
Aem offline content
Aem offline contentAem offline content
Aem offline content
 
S903 palla
S903 pallaS903 palla
S903 palla
 
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
 
Configuring CQ Security
Configuring CQ SecurityConfiguring CQ Security
Configuring CQ Security
 
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
Webinar: Adobe Experience Manager Clustering Made Easy on MongoDB
 
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
 
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management SystemsAEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
AEM + MongoDB: How to Scale and Operate Large Digital Asset Management Systems
 
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
 
Accelerate your ColdFusion Applications using Caching
Accelerate your ColdFusion Applications using CachingAccelerate your ColdFusion Applications using Caching
Accelerate your ColdFusion Applications using Caching
 
Aem maintenance
Aem maintenanceAem maintenance
Aem maintenance
 
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheScale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
 
Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...
 
Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)
 
Best Practices for WordPress in Enterprise
Best Practices for WordPress in EnterpriseBest Practices for WordPress in Enterprise
Best Practices for WordPress in Enterprise
 
Aem hub oak 0.2 full
Aem hub oak 0.2 fullAem hub oak 0.2 full
Aem hub oak 0.2 full
 
Presentation on Instant page speed optimization
Presentation on Instant page speed optimizationPresentation on Instant page speed optimization
Presentation on Instant page speed optimization
 
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on NginxEasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
 
How to scale PHP applications
How to scale PHP applicationsHow to scale PHP applications
How to scale PHP applications
 

En vedette

Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Craig Randall
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdam Pazik
 
AEM MSM: Basics & More
AEM MSM: Basics & MoreAEM MSM: Basics & More
AEM MSM: Basics & MoreKanika Gera
 
HBase and Hadoop at Adobe
HBase and Hadoop at AdobeHBase and Hadoop at Adobe
HBase and Hadoop at AdobeCosmin Lehene
 
The Right Ingredients for Building an Effective Customer Profile
The Right Ingredients for Building an Effective Customer ProfileThe Right Ingredients for Building an Effective Customer Profile
The Right Ingredients for Building an Effective Customer ProfileDemandbase
 
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
 
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
 
AEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component DevelopmentGabriel Walt
 

En vedette (9)

Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
 
Adobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud DeploymentsAdobe Managed Services: Complicated Cloud Deployments
Adobe Managed Services: Complicated Cloud Deployments
 
Leveraging Data To Master Customer Experience - Patrick Tripp, Adobe
Leveraging Data To Master Customer Experience - Patrick Tripp, AdobeLeveraging Data To Master Customer Experience - Patrick Tripp, Adobe
Leveraging Data To Master Customer Experience - Patrick Tripp, Adobe
 
AEM MSM: Basics & More
AEM MSM: Basics & MoreAEM MSM: Basics & More
AEM MSM: Basics & More
 
HBase and Hadoop at Adobe
HBase and Hadoop at AdobeHBase and Hadoop at Adobe
HBase and Hadoop at Adobe
 
The Right Ingredients for Building an Effective Customer Profile
The Right Ingredients for Building an Effective Customer ProfileThe Right Ingredients for Building an Effective Customer Profile
The Right Ingredients for Building an Effective Customer Profile
 
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
 
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 Best Practices for Component Development
AEM Best Practices for Component DevelopmentAEM Best Practices for Component Development
AEM Best Practices for Component Development
 

Similaire à CQ5.x Maintenance Webinar 2013

Efficient content structures and queries in CRX/CQ
Efficient content structures and queries in CRX/CQEfficient content structures and queries in CRX/CQ
Efficient content structures and queries in CRX/CQconnectwebex
 
Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013MattKilner
 
Decrease build time and application size
Decrease build time and application sizeDecrease build time and application size
Decrease build time and application sizeKeval Patel
 
AEM - Key Learning from Escalations
AEM - Key Learning from EscalationsAEM - Key Learning from Escalations
AEM - Key Learning from EscalationsKanika Gera
 
How to accelerate docker adoption with a simple and powerful user experience
How to accelerate docker adoption with a simple and powerful user experienceHow to accelerate docker adoption with a simple and powerful user experience
How to accelerate docker adoption with a simple and powerful user experienceDocker, Inc.
 
gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”Ruggero Citton
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationYudi Herdiana
 
Webcenter application performance tuning guide
Webcenter application performance tuning guideWebcenter application performance tuning guide
Webcenter application performance tuning guideVinay Kumar
 
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?Storage Switzerland
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Jess Coburn
 
Intro to goldilocks inmemory db - low latency
Intro to goldilocks inmemory db - low latencyIntro to goldilocks inmemory db - low latency
Intro to goldilocks inmemory db - low latencyDongpyo Lee
 
DockerCon Europe 2018 Monitoring & Logging Workshop
DockerCon Europe 2018 Monitoring & Logging WorkshopDockerCon Europe 2018 Monitoring & Logging Workshop
DockerCon Europe 2018 Monitoring & Logging WorkshopBrian Christner
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with BlackfireMarko Mitranić
 
Fast and Reproducible Deep Learning
Fast and Reproducible Deep LearningFast and Reproducible Deep Learning
Fast and Reproducible Deep LearningGreg Gandenberger
 
Get to know the browser better and write faster web apps
Get to know the browser better   and write faster web appsGet to know the browser better   and write faster web apps
Get to know the browser better and write faster web appsLior Bar-On
 
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...Amazon Web Services
 
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...Amazon Web Services
 
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...Amazon Web Services
 

Similaire à CQ5.x Maintenance Webinar 2013 (20)

Efficient content structures and queries in CRX/CQ
Efficient content structures and queries in CRX/CQEfficient content structures and queries in CRX/CQ
Efficient content structures and queries in CRX/CQ
 
Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013Windows Debugging Tools - JavaOne 2013
Windows Debugging Tools - JavaOne 2013
 
Scaling PHP apps
Scaling PHP appsScaling PHP apps
Scaling PHP apps
 
Decrease build time and application size
Decrease build time and application sizeDecrease build time and application size
Decrease build time and application size
 
AEM - Key Learning from Escalations
AEM - Key Learning from EscalationsAEM - Key Learning from Escalations
AEM - Key Learning from Escalations
 
How to accelerate docker adoption with a simple and powerful user experience
How to accelerate docker adoption with a simple and powerful user experienceHow to accelerate docker adoption with a simple and powerful user experience
How to accelerate docker adoption with a simple and powerful user experience
 
gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for Consolidation
 
Webcenter application performance tuning guide
Webcenter application performance tuning guideWebcenter application performance tuning guide
Webcenter application performance tuning guide
 
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?
Webinar: Cloud Archiving – Amazon Glacier, Microsoft Azure or Something Else?
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11
 
Intro to goldilocks inmemory db - low latency
Intro to goldilocks inmemory db - low latencyIntro to goldilocks inmemory db - low latency
Intro to goldilocks inmemory db - low latency
 
DockerCon Europe 2018 Monitoring & Logging Workshop
DockerCon Europe 2018 Monitoring & Logging WorkshopDockerCon Europe 2018 Monitoring & Logging Workshop
DockerCon Europe 2018 Monitoring & Logging Workshop
 
2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire2019 StartIT - Boosting your performance with Blackfire
2019 StartIT - Boosting your performance with Blackfire
 
Fast and Reproducible Deep Learning
Fast and Reproducible Deep LearningFast and Reproducible Deep Learning
Fast and Reproducible Deep Learning
 
Get to know the browser better and write faster web apps
Get to know the browser better   and write faster web appsGet to know the browser better   and write faster web apps
Get to know the browser better and write faster web apps
 
Module 03.pdf
Module 03.pdfModule 03.pdf
Module 03.pdf
 
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT331) - AWS re:Inv...
 
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...
Metrics-Driven Performance Tuning for AWS Glue ETL Jobs (ANT326) - AWS re:Inv...
 
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
Accelerating Application Development with Amazon Aurora (DAT312-R2) - AWS re:...
 

Dernier

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"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
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
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
 

Dernier (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"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
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
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
 

CQ5.x Maintenance Webinar 2013

  • 1. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. ADOBE CUSTOMER BROWN BAG SERIES Andrew Khoury & Sham Hassan Chikkegowda Customer Support Engineers, Adobe For the best listening experience, we recommend using a headset TODAY’S TOPIC: AEM Monitoring and Maintenance
  • 2. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What’s Covered 1. Best practices for maintaining AEM instances. 2. Tips and tricks for proactive things to monitor. 3. Tips and tricks for reducing downtime when instances are corrupted. 4. Common pitfalls to avoid.
  • 3. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Topics covered  Replication DataStore Garbage Collection Tar PM Optimization Workflow   
  • 4. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 4 Optimizing replication Replication Tuning and Monitoring
  • 5. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Monitoring Replication • Replication can be monitored using JMX • Each agent exposes an object • The objects expose: - If the agent is enabled - If the queue is blocked, paused or invalid - The number of entries in the queue - Timing information 5
  • 6. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Configure a replication.log 6 Why? • Keeps error.log from getting bloated • Isolates replication errors and warnings How? • Add an Apache Sling Logging Logger: - Log File: logs/replication.log - Log Level: Info - Logger: com.day.cq.replication • Add an Apache Sling Logging Writer (for log rotation) - Log File: logs/replication.log
  • 7. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 7 Replication monitoring via JMX And Log ConfigurationDEMONSTRATION
  • 8. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Initializing and Queuing 8 User activates /content/geometrixx-outdoors/en/support Durbo package /var/replication/data Content is packaged OSGi event is fired Replication AgentManager handles the event Sling Job Handler queues/stores the job slingevent:Job /var/eventing/jobs
  • 9. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Processing Jobs 9 Sling Job Handler Process the job through the correct TransportHandler ERROR: Queue stuck slingevent:Job node /var/eventing/jobs Read job from queue
  • 10. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Replication: Troubleshooting The queue can get stuck if: • The Job Handler fails. • Error while sending the data. - Failure to create Durbo package from /var/replication/data - Issue in class loading, network malfunction, etc. • The receiving end fails to respond. - Publish instance is experiencing high traffic or is unstable. • The receiving end fails to import / receive the replication during transport. For example: - Failure to read the durbo package - Failure to save/import the content 10
  • 11. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication Optimizations: • Enable “File Storage” of replication durbo packages: - Go to http://host:port/system/console/configMgr and login as admin - Find “Adobe Granite Replication Content Factory” and click Edit - Check the “replication.content.useFileStorage.name” checkbox and Save • Set the connection timeout and socket timeout in the agent Extended configuration to avoid socketConnect and socketRead hang situations. - socketConnect can be 30 seconds = 30000 - socketRead timeout can be 10 minutes = 600000 11
  • 12. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication 12
  • 13. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication Optimizations: • In the “Triggers” tab of the replication agent: - “No Status Update” - if you do not need a status to track that the replication happened. - “No Versioning” - if you do not need versions of the pages or assets generated on activations. 13
  • 14. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Optimizing Replication 14
  • 15. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 15 Reducing disk space usage DataStore Garbage Collection
  • 16. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is the DataStore? The DataStore (default implementation): • Stores binary JCR properties > 4KB (default). • Only allows files to be added. • Stores files under crx-quickstart/repository/repository/datastore. • Files are referenced by the JCR internal node record (persistence manager bundles). 16
  • 17. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. How does the DataStore work? 1. A unique id is generated from contents of the file. 2. The id is used for the filename. 3. The datastore directory structure is built like this: • datastore/{1st 2 chars id}/{2nd 2 chars id}/{3rd 2 chars id}/{id} • E.g. datastore/a2/b9/86/a2b98676377b947244bb954769def9b4fd625daa 4. Due to this, files are stored uniquely so the same file will only be stored once. 17
  • 18. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore Example User uploads the same image to two different locations 18 AEM.png Upload Upload
  • 19. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. a2b98676377b947244bb954769def9b4fd625daa repository/repository/datastore 86 b9 a2 DataStore Example 19 JCR Node: /content/dam/AEM.png/renditions/original/jcr:content/data property JCR Node: /content/dam/geometrixx- media/AEM.png/renditions/original/jcr:content/data property
  • 20. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. How does DataStore GC work? DataStore GC (Garbage Collection) is the only way to delete DataStore files. How does it work? • “Scan” Phase - Read all nodes in the JCR - Update the timestamp of each of the referenced datastore files. • “Delete” Phase - Find all files with timestamp older than when it started the scan phase and deletes them. 20
  • 21. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore GC: Avoiding common Pitfalls Before running DataStore GC, make sure: • You have a backup of the datastore directory • No issues with setting timestamps (this especially applies of your datastore is on a network storage). • Date and time is in sync between network storage and CQ server • CQ5.3 or 5.4 with CRX2.2 - at least hotfix 2.2.0.70. • CQ5.6.1 - do *NOT* use stopDataStoreGarbageCollection in JMX to stop the GC process. 21
  • 22. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 22 How to run DataStore GCDEMONSTRATION
  • 23. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. DataStore GC This error means you are missing a file from your datastore: “DataStoreException: Record not found” If you see that error then do not run datastore gc until you have restored the missing files. To identify all missing files: • Go to /crx/explorer/index.jsp and login as admin (/crx/index.jsp CQ5.4 and earlier). • Browse to "Repository Configuration" => "Check Repository”. • Check the "Data store consistency check" box. • Click “Run” • This will output a list of nodes referencing the missing files along with the path of the missing file. • Since the files are unique, you can copy the missing files over from any other AEM (CQ) instances that the same file. See this article for more details: • http://helpx.adobe.com/crx/kb/DataStoreGarbageCollection.html 23
  • 24. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 24 How to run DataStore Consistency Check DEMONSTRATION
  • 25. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 25 Tar Persistence Manager Optimization
  • 26. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Part 2: Topics Covered TarPM Optimization - What is the TarPM & TarPM optimization? - Best practices for maintaining AEM Instances - Tips and tricks for proactive things to monitor - Tips and tricks for reducing downtime & Speed up the process Workflow Monitoring - Supported Features - Best practices for maintaining AEM Instances. - Tips and tricks for proactive things to monitor 26
  • 27. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is TarPM? 27 data_00000.tar <cq_home>/crx-quickstart/repository/workspaces/crx.defau data_00001.tar Bundle 01 Bundle 02 Bundle 03 Bundle 04 • CRX Stores nodes and properties as one entity (bundle) in data tar file using Tar Persistance Manager (Tar PM). • Tar PM model is append only.
  • 28. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What is TarPM Optimization? • Tar Optimization is a process which cleans up the old unreferenced data to improve the overall performance & reduce disk usage. 28 bundle03 bundle04 bundle11 bundle14 data_00003.tar TAR OPTIMIZATIO N bundle01 bundle02 bundle03 bundle04 data_00001.tar bundle11 bundle12 bundle13 bundle14 data_00002.tar Unuse d data Deletes old data tar file. Deletes old data tar file.
  • 29. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Tar file location. • Default storage location of data tar files are 29 <cq_home>/crx-quickstart/repository data_00000.tar data_00001.tar workspaces crx.default version data_00004.tar data_00005.tar data_00010.tar data_00011.tar tarJournal data_00012.tar data_00013.tar
  • 30. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Regularly run tar optimization during the low usage hours of your system. • Automatic Schedule:- - By default CRX automatically runs Tar PM optimization in midnight between 2 AM to 5 AM. - To reconfigure a scheduled optimization add a param autoOptimizeAt to PersistenceManager element at repository.xml and workspace.xml. • <PersistenceManager class="com.day.crx.persistence.tar.TarPersistenceManager"> <param name="autoOptimizeAt" value="01:00-04:00" /> </PersistenceManager> 30
  • 31. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Manually execute TarPM optimization from JMX console 31
  • 32. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Manually by creating an optimization file “optimize.tar” in the desired workspace folder. 32
  • 33. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for proactive things to monitor • From JMX console monitor - TarOptimizationRunningSince:- The timestamp when the current Tar PM optimization was started, or 0 if currently not running. - TarOptimizationWork:- The remaining optimization work in KiloBytes. - TarOptimizationRate:- TarPM optimization rate in KB/sec. 33
  • 34. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 34 How to monitor Tar Optimization via JMX client DEMONSTRATION
  • 35. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for reducing downtime & Speed up the process • Configure the TarOptimizationDelay property:- Number of milliseconds to sleep after optimizing one transaction. • Load the index files into the buffer cache every few minutes, from both the crx.default and the version directory. - cat <cq_home>/crx-quickstart/repository/workspaces/crx.default/index*.tar > /dev/null” - cat <cq_home>/crx-quickstart/repository/version/index*.tar > /dev/null” • To enable Index in memory option refer http://dev.day.com/docs/en/crx/current/administering/persistence_managers.html#Configuring the indexInMemory Property 35
  • 36. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Common Pitfalls to Avoid • Scheduling tar optimization to run during the heavy usage hours of your system. • If you are optimizing tar files in a cluster, you need to ensure that the Tar optimization time are set to the same value on all cluster nodes. • Do not run tar optimization while you are backing up instance. • Do not run tar optimization when datastore garbage collection is running. • Don’t ignore the message “File not found” exception when tar optimization is running. Please contact daycare. 36
  • 37. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 37 Workflow maintenance and Purge Obsolete Workflow Data Workflow Monitoring
  • 38. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Workflow Purge • Workflows enable you to automate Experience Manager activities. • Workflows events generate archived data. • This data can quickly grow over time as workflows are processed. • Purging this data on a regular schedule improves system performance. • In AEM(CQ) 5.6 the Workflow JMX MBean support has been added in order to maintain workflow system. 38
  • 39. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Best practices for maintaining AEM Instances Regularly run workflow purge to avoid the problems associated with a large volume of data. • Using user interface through Felix console • Using CURL • Creating a JMX client that uses Workflow Mbean http://helpx.adobe.com/cq/kb/ workflow-monitor-via-jmx.html 39
  • 40. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Tips and tricks for proactive things to monitor 40
  • 41. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 41 How to monitor workflow via JMX client DEMONSTRATION
  • 42. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.