Digital asset management is often used in cases where performance matters; however, the typical DAM setup contains a number of hardware and software components that can affect performance. This document provides the following:
Poor performance in digital asset management can impact the user experience in three ways: interactive performance, asset processing, and download speed. To improve performance, it is important to measure the observed performance properly and to establish target metrics.
1. Interactive searching and browsing Users are searching for assets or browsing the DAM Finder and complain about slow response times or that search results do not show up immediately. This is an interactive performance problem.
Interactive performance is measured in terms of page response time. This is the time it takes from receiving the HTTP request to closing the HTTP response, which can be determined from the request log files. Typical target performance is a page response time below two seconds.
2. Asset processing An asset processing problem is when users are uploading assets and it takes minutes until assets are readily converted and ingested into AEM DAM.
Asset processing performance is measured in terms of average workflow process completion time. This is the time it takes from invoking the Asset update workflow process to its completion, which can be determined from the workflow reports user interface. Typical target performance depends on the size and type of assets processed and the number of renditions. Examples target performances could be as follows:
3. Download speed A throughput issue is when downloading from AEM DAM takes long and thumbnails do not show up immediately when browsing the DAM Admin or the DAM Finder.
Throughput performance is measured in terms of download rate in kilobits per second. Typical target performance is 300 kilobits per second for 100 concurrent downloads.
4. Factors influencing asset processing performance
To be able to estimate what hardware you require to process assets, the following aspects need to be taken into account:
The amount of pixels contained in the image determines the processing time - more pixels means processing takes a longer time.
Image type, compression rate, or the related size of the file the image is stored in does not influence the overall performance significantly.
Heap has been identified to be the most important limiting factor. Whenever the asset exceeds the available free memory, the processing performance drops rapidly.
The DAM processes are well suited well to be performedin paralell for large amounts. Uploading assets in a batch and multi-core processors speeds up the absolute time spent per asset.
5. Estimating Hardware Requirements for Performing Asset Processing
Extensive processing of digital assets requires optimized hardware resources, the most relevant factors are image size and the peak throughput of processed images.
Allocate at least 16GB of heap and configure the DAM Update Asset workflow to use the Camera Raw package for the ingestion of raw images.
A typical DAM setup consists of end users accessing DAM via a load balancer. The DAM instance might be part of a clustered setup, where each DAM instance runs in a Java Virtual machine process on either a physical machine or a virtual machine. DAM storage is either provided by a RAID disk in cases of single-machine setups or a managed network attached storage in case of clustered setups.
The following legend describes the possible performance pitfall areas with some solutions, as appropriate.
Network connection to end user A slow network connection can cause throughput issues, in some rare cases also latency issues. Sometimes the user has a slow connection from the ISP, especially in intranets. This is a sign of incorrect network topology.
Temporary File System A slow local file system can cause interactive performance problems, especially when it comes to search, because the search indexes are stored on the local disk. It can additionally cause asset processing problems if the command line process is being used.
AEM DAM Finder Interactive performance problems, often experienced in searches are caused by high CPU utilization due to many concurrent users or other CPU-consuming processes on the same instance. Moving from virtual machines to dedicated machines and making sure no other services run on the machine can help improving performance. If high CPU load is caused due to asset processing and many concurrent users, Day recommends adding additional cluster nodes.
AEM DAM Workflow Long-running workflow processes during asset ingestion cause asset processing performance problems. Depending on the type of assets being processed, this can indicate CPU over-utilization. Day recommends that you reduce the number of other processes running on the system and to increase the number of available CPUs by adding cluster nodes.
NAS Connectivity Poor network connectivity to the NAS causes interactive performance problems, because accessing new nodes during asset processing is slowed down due to network latency. Additionally, slow network throughput adversely affects throughput, but also asset processing performance, because loading and saving renditions is slowed down.
Reasons for bad latency and throughput in a NAS are usually network topology or NAS over-utilization by other services.
Network Attached Storage Over-used network attached storage systems can cause an array of problems:
For every DAM project, be sure to establish a performance testing regime that can identify and resolve bottlenecks quickly. To do so, consider the following checkpoints:
The following performance tweaks have been used in projects so far: