nerdexam
Adobe

AD0-E117 · Question #4

A website built on AEM Sites displays the company's stock price in the footer of all pages. The stock data is retrieved from a third party REST service using two-way SSL and rendered in an AEM…

The correct answer is C. Load the stock data component asynchronously. Loading the stock data component asynchronously (C) decouples the slow third-party REST call from the main page render - the page loads quickly and the stock price fills in independently, so a 30-second backend delay no longer blocks the user experience. Why the others fail: A…

Design and Architecture

Question

A website built on AEM Sites displays the company's stock price in the footer of all pages. The stock data is retrieved from a third party REST service using two-way SSL and rendered in an AEM component using HTL During performance testing in the last development sprint it becomes apparent that the third party service sometimes takes up to 30 seconds to respond, which degrades the overall site performance. How should an Architect address this issue?

Options

  • ACall the REST service directly from the browser
  • BTemporarily remove the component from all content
  • CLoad the stock data component asynchronously
  • DAdd a 5 second timeout to the REST call

How the community answered

(18 responses)
  • A
    22% (4)
  • B
    6% (1)
  • C
    61% (11)
  • D
    11% (2)

Explanation

Loading the stock data component asynchronously (C) decouples the slow third-party REST call from the main page render - the page loads quickly and the stock price fills in independently, so a 30-second backend delay no longer blocks the user experience.

Why the others fail:

  • A - Moving the REST call to the browser exposes the two-way SSL certificates (private keys) to the client, which is a serious security vulnerability; client-side code cannot safely hold server certificates.
  • B - Removing the component is a business workaround, not an architectural solution; it eliminates the feature entirely rather than fixing the problem.
  • D - A 5-second timeout would cause the component to fail (show an error or blank) for slow responses rather than degrade gracefully; it doesn't improve perceived performance, it just caps the wait time with a hard failure.

Memory tip: Think "async = non-blocking." Whenever a slow external dependency risks degrading page load, the AEM pattern is to isolate it asynchronously (e.g., via Sling includes with flush=true or client-side lazy loading) so the rest of the page renders at full speed.

Topics

#Asynchronous Loading#Performance Optimization#External Service Integration#AEM Components

Community Discussion

No community discussion yet for this question.

Full AD0-E117 Practice