adobe / adobe/aem-core-wcm-components

[RFC] Image component with renditions support

Open
#496 16 comments 4 reactions 0 assignees View on GitHub
enhancement good first issue
Dominant language
Java
Stars
796
Forks
776
Avg merge
3d 22h
Merged PRs (30d)
8

Description

Hi,

I have few questions about rendition in Image component. I hope you could help me, because I cannot find any historical tickets, which answer on my questions.

I am wondering was the main argument to implement own AdaptiveImageServlet instead of use e.g. `picture `tag in component markup. I see the value of AdaptiveImageServlet (optimal rendition is being loaded) but on the other hand the same solution has one main drawback: image link doesn’t point directly to DAM asset but to Image component placed on a page e.g. `/content/we-retail/language-masters/en/men/_jcr_content/root/responsivegrid/teaser_980945351.coreimg.jpeg/1473680831529.jpeg`.

The drawback could have impact on crucial areas like:
1. Dispatcher cache size. When single image is referenced in many placed then instead of single copy on dispatcher (or CDN) level, we get many duplicated assets (when we ignorejpegQuality param then they are copies). What is the recommendation for big platforms where many sites are hosted on AEM or for sites, which are very rich in Image components? What is the recommendation in terms of dispatcher cache invalidation?
1. Security. What is the recommendation in terms of security? Current implementation could be easily used for DDOS attack (pattern observed in links could be used for generating thousands of different requests). How to block invalid requests on Apache level when configuration could be changed in any time?
3. Platform performance. Each requested image is returned by AdaptiveImageServlet. The servlet could execute custom calculations for each image. Do you have any information how it affects overall AEM performance and page readiness time?

Thanks

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the Image component's AdaptiveImageServlet and its component markup, then examine the issue's questions about picture markup, dispatcher or CDN caching, security, and performance. Done would require a clearly scoped RFC or implementation plan that addresses these concerns; the issue currently does not define a specific change.

Written by the indexing model from the issue text.

Assessment

Tech stack
apache
Domain
frontend, performance, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.