在這部分中 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是JavaScript執行階段環境,用來處理AEM專案的 ui.frontend
子專案。 Node.js隨npm分佈,後者是實際的Node.js Package Manager,用於管理JavaScript相依性。
接下來,讓我們看看 AEM 環境的組成部分。
完整的 AEM 環境由編寫、發佈和 Dispatcher 組成。這些相同的元件在本機開發執行階段中可供使用,讓您更輕鬆地在上線之前預覽程式碼和內容。
編寫服務是內部使用者建立、管理和預覽內容的地方。
發佈服務 視為「即時」環境,通常是使用者與之互動的對象。 在Author服務上編輯和核准後的內容會分發(復寫)到Publish服務。 AEM Headless 應用程式最常見的部署模式是讓應用程式的生產版本連接到 AEM Publish 服務。
Dispatcher 是靜態 Web 伺服器,增加了 AEM Dispatcher 模組。它快取發佈執行個體產生的網頁以提升效能。
本機開發專案以 Apache Maven 為基礎建置,並使用 Git 進行原始檔控制。若要更新專案,開發人員可以使用偏好的整合式開發環境,例如 Eclipse、Visual Studio Code 或 IntelliJ 等。
若要測試Headless應用程式擷取的程式碼或內容更新,請將更新部署至本機AEM執行階段。 其中包括AEM作者和發佈服務的本機執行個體。
請務必注意本機 AEM 執行階段每個元件之間的區別,因為在與您的更新最有關係的地方測試它,這一點非常重要。例如,在編寫執行個體測試內容更新或在發佈執行個體測試新程式碼。
在生產系統中,Dispatcher 和 http Apache 伺服器一律位於 AEM 發佈執行個體的前面。它們為 AEM 系統提供快取和安全性服務,因此針對 Dispatcher 測試程式碼和內容更新是最重要的。
若要準備AEM Headless專案以準備啟動,請確定專案的所有組成部分皆正常運作。
為此,您必須將所有內容(程式碼、內容和設定)整合在一起,並在本機開發環境中測試其上線整備。
本機開發環境由三個主要區域組成:
設定本機開發環境後,您可以透過在本機部署靜態Node伺服器來模擬提供給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)。