Custom Image Rendition servlet vs DAM Update Assets workflow Renditons

Avatar

Avatar

avinasht7298469

Avatar

avinasht7298469

avinasht7298469

11-12-2017

In AEM ,I have seen project where we have used custom image rendition servlet (Generating rendition on fly) or DAM update Asset workflow.

If we are using custom image rendition servlet ,It has certain benefits(Named Transform Image Servlet ).

1. can create new image rendition on the fly based upon configuration .

2. Save space in AEM .

3. Also performance vice ,the image are cached in dispatcher for both author and publisher ,so only rendition creation only for the first time.

Limitation

1.New image rendition need to created if cache is cleared.

if we are using DAM update Asset workflow, It has certain limitation.and benefits.

Limitation

1. whenever author upload image this workflow trigger new rendition are created for every image and at at time we dont need all rendition.

2 if we are migrating large asset ,it is again bottleneck.

3. take additional space in author and publisher as well for all images

Benefits

1. new image rendition is not created every time but just once .

Question:

If I evaluate from above reasoning i believe that image rendition servlet is more useful in term of saving space and load on author and publish server .

Is the above approach  is recommendation/best practice from adobe or if someone have completely different perspective.

View Entire Topic

Avatar

Avatar

Rakesh_Rangaraj

Avatar

Rakesh_Rangaraj

Rakesh_Rangaraj

11-12-2017

Let's discuss two approaches:

  1. Create Image on the fly: Works only if the Image is saved as a resource pointed to foundation/image component. Use html5smart image widget to save the image as a resource. URL will be pointed to the page jcrcontent.
    • Pros:
      • An image on the fly.
      • Saves space on author, publish servers
      • Can create image to fit into any container without creating new images from Visual Designer
      • An image is saved as a resource in the content node so you do some manipulation like rendering grayscale, rotate.
    • Cons:
      • Crops the image if width or height are not proper.
      • Throws error if image is deactivated but still code refers to the NamedServlet URL
      • Animated GIFs loses its animation.
      • Lose image quality some.
      • An image has to be saved as a resource in the content node then only you can create Images on the fly by specifying the width, height, and quality.
  2. Rendition Based: Works for any images in the DAM. URL will be either actual rendition or gives back original image
    • Pros:
      • Renditions are specified based on the containers in the site and created as soon as image is uploaded by the author
      • Renditions are readily available for the author to view how it looks for smaller dimensions.
      • Work great on portrait and landscape images.
    • Cons:
      • Takes space, even though for few image, renditions specified in the DAM Update Asset workflow are not needed.
      • Need to re-run DAM Update Asset workflow if new rendition is needed