在这部分中 AEM Headless开发人员历程,了解如何实时部署headless应用程序。
在 AEM Headless 历程的上一个文档如何通过 AEM Assets API 更新您的内容中,您已了解如何通过 API 在 AEM 中更新现有 Headless 内容,您现在应该:
本文基于这些基础知识编写,以便您了解如何准备您自己的 AEM Headless 项目以上线。
本文档可帮助您了解 AEM Headless 发布管道,以及在通过您的应用程序上线之前必须了解的性能注意事项。
AEM SDK 用于构建和部署自定义代码。它是您在启用Headless应用程序之前必须开发和测试的主要工具。 它包含以下构件:
除了AEM SDK之外,您还需要其他工具来帮助您在本地开发和测试代码和内容:
由于AEM是一种Java™应用程序,因此您必须安装Java™和Java™ SDK才能支持AEMas a Cloud Service的开发。
Git 可用于管理源代码管理和签入对 Cloud Manager 的更改,然后将它们部署到生产实例。
AEM 使用 Apache Maven 构建从 AEM Maven 项目原型生成的项目。所有主要 IDE 都提供对 Maven 的集成支持。
Node.js是用于处理AEM项目的前端资源的JavaScript运行时环境 ui.frontend
子项目。 Node.js与npm一起分发,后者是实际上的Node.js包管理器,用于管理JavaScript依赖项。
接下来,让我们看看 AEM 环境的组成部分。
完整的 AEM 环境由创作、发布和 Dispatcher 构成。这些相同的组件在本地开发运行时中可用,使您能够更轻松地在代码和内容上线之前进行预览。
Author 服务是内部用户创建、管理和预览内容的地方。
Publish服务 被认为是“实时”环境,通常是最终用户与之交互的对象。 在Author服务上编辑和批准后的内容将分发(复制)到Publish服务。 AEM Headless 应用程序最常见的部署模式是将应用程序的生产版本连接到 AEM Publish 服务。
Dispatcher 是一个通过 AEM Dispatcher 模块增强的静态 Web 服务器。它缓存由发布实例生成的网页以提高性能。
本地开发项目基于 Apache Maven 构建,并使用 Git 进行源代码管理。若要更新项目,开发人员可以使用他们喜欢的集成开发环境,例如 Eclipse、Visual Studio Code 或 IntelliJ 等。
要测试Headless应用程序摄取的代码或内容更新,请将更新部署到本地AEM运行时。 其中包括AEM创作和发布服务的本地实例。
请务必记下本地 AEM 运行时中每个组件之间的区别,因为在更新最起作用的位置测试更新是非常重要的。例如,在创作实例上测试内容更新或在发布实例上测试新代码。
在生产系统中,Dispatcher 和 http Apache 服务器将始终位于 AEM 发布实例的前面。它们为 AEM 系统提供缓存和安全服务,因此,针对 Dispatcher 测试代码和内容更新也至为重要。
要准备您的AEM Headless项目以进行启动,请确保项目的所有组成部分都正常运行。
为此,您必须将所有内容(代码、内容和配置)放在一起,在本地开发环境中测试它们是否准备好上线。
本地开发环境由三个主要方面组成:
设置本地开发环境后,您可以通过本地部署静态节点服务器来模拟向React应用程序提供内容服务。
要更深入地了解设置本地开发环境和内容预览所需的所有依赖项,请参阅 生产部署文档.
现在,您可以按照下面概述的最佳实践,让AEM Headless应用程序做好启动准备。
请参阅 其他资源 有关CDN和缓存的更多信息。
Last-modified-since
以刷新资源。_reference
输出开始下载资源,而无需分析完整的 JSON 文件。部署到生产环境取决于您是否拥有 传统 使用Maven部署的AEM实例,或者位于AdobeManaged Services (AMS)上并因此使用Cloud Manager的实例。
对于 传统 使用Maven部署(非AMS),请参阅 WKND教程 了解概述。
如果您是使用Cloud Manager的AMS客户,在确保一切经过测试并正常工作后,您可以将代码更新推送到 Cloud Manager中的集中式Git存储库.
将更新上传到Cloud Manager后,使用将它们部署到AEM Cloud Manager的CI/CD管道.
要让用户在使用 AEM Headless 应用程序时获得最佳体验,请务必监控关键性能指标,详细信息如下:
将这些最佳实践用作常规调试方法:
要通过支持部门高效地记录错误,并在您需要进一步帮助时完成以下步骤:
恭喜!您已完成 AEM Headless 开发人员历程!您现在应了解以下内容:
您已经启动了自己的第一个AEM Headless项目,或者现在掌握了执行此项目的所有知识。 做得好!
不过,没有必要停止AEM中的Headless商店。 在 历程的快速入门部分讨论了AEM如何支持headless交付和传统的全栈模型,并支持将二者的优势结合起来的混合模型。
如果项目需要这种灵活性,请继续历程的可选附加部分, 如何使用AEM创建单页应用程序(SPA)。
CDN缓存