Architecture

Edge Delivery Services and document-based authoring are part of the next generation of Adobe Experience Manager’s composable architecture. A key aspect of this architecture is to enable customers to create great experiences using the infrastructure and processes that already enable their success.

How AEM fits in

https://main--helix-website--adobe.hlx.page/docs/architecture-delivery.svg

At the highest level, Adobe Experience Manager is an on origin service that you plug in to your existing Content Delivery Network (CDN). There are out of the box integrations with Akamai, Cloudflare, Fastly, and Amazon Cloudfront.

The AEM stack itself is engineered for high performance and availability. In order to achieve best possible availability, all delivery services are run in two fully redundant edge providers, have fully redundant storage infrastructure, and are constantly monitored for performance.

The full picture

https://main--helix-website--adobe.hlx.page/docs/architecture-overview.svg

Looking at the full stack, there are four key layers:

  1. Your customer-specific infrastructure like CDNs, DNS, TLS certificates, etc.
  2. Adobe’s edge compute layer
  3. Adobe’s storage layer for edge delivery
  4. Your customer-specific sources of content and code

In the visitor-facing tier of this architecture, Edge Delivery Services, customers use their existing CDNs, DNS, certificates, etc. which is then delivering the AEM-produced experience to all modern web browsers, native mobile applications, chat bots, or other backend applications.

The central tier consists of the experience composition service, a dual-stack (for maximum availability) architecture that serves content stored in highly optimized formats for experience delivery. The storage layer is made up of Content Bus for structured and unstructured content, Media Bus for assets and media, and Code Bus for the code of the site.

The bottom tier enables authoring productivity and just like the top tier, it composes the tools and infrastructure already in use, be it AEM Authoring, Microsoft Sharepoint, Word, Excel, or Google Drive, Docs, and Sheets.

How content gets published

https://main--helix-website--adobe.hlx.page/docs/architecture-publishing.svg

The core publishing process is facilitated by the Admin service for preview and publishing and consists of two key steps, both triggered by authors through the sidekick.

The preview operation in sidekick will pull content from the configured content source such as Sharepoint or Google Drive, or Adobe Experience Manager Sites. This integration is based on the standardized delivery format for structured and unstructured content and can be extended to other third-party content providers. Once the content has been pulled from the originating repository, it will be stored in AEM’s storage layer, separated by structured, unstructured content, assets, and media.

In a second step, authors can publish content. This operation takes the previewed content and makes it available to the delivery tier of our infrastructure. The most important step here is to purge the CDN. AEM will purge every layer of the caching infrastructure, thanks to its deep integration with content delivery networks.

What about code?

Like content, AEM uses code from your customer-provided repositories. Unlike content, code is taken from GitHub, using the AEM code sync app for GitHub that has been installed during the initial tutorial.

This integration pulls code from all active branches, enabling effective parallel development and scalable testing. When code is merged into the main branch, the CDN will be purged of all affected resources, making deployments fast and easy.