AEM as a Cloud Service中的樹狀結構復寫工作流程 tree-replication-workflows

您必須發佈內容樹狀結構的大型分支時,標準的逐頁發佈可能會很緩慢,且耗用大量資源。 AEM as a Cloud Service提供工作流程型方法,可在可管理的區塊中複製深層內容階層、在複製佇列忙碌時暫停,並在中斷時繼續。

使用​ 樹狀結構啟動工作流程步驟 ​進行大量樹狀結構復寫。 建議使用這種方法處理大型負載。 發佈內容樹狀工作流程​仍會記錄以供參考,但已遭取代以支援樹狀結構啟動步驟。

如需其他復寫主題,請參閱復寫

樹狀結構啟動工作流程步驟 tree-activation

樹狀結構啟動工作流程步驟旨在有效復寫內容節點的深層階層。 當佇列變得太大時,它會自動暫停,以允許其他複製以最小的延遲並行進行。

建立使用TreeActivation程式步驟的工作流程模型:

  1. 從AEM as a Cloud Service首頁,移至​工具 — 工作流程 — 模型

  2. 在「工作流程模型」頁面中,按畫面右上角的​建立

  3. 新增標題和名稱至您的模型。 如需詳細資訊,請參閱建立工作流程模型

  4. 從清單中選取建立的模型,然後按​編輯

  5. 在下列視窗中,刪除預設顯示的「步驟」

  6. 將「處理步驟」拖放至目前的模型流程:

    處理步驟

  7. 在流程中選取「處理」步驟,並按扳手圖示選取​設定

  8. 選取「處理序」標籤,並從下拉式清單中選取「Publish Content Tree」,然後核取「處理常式進階」核取方塊

    樹狀結構啟動

  9. 在​ 引數 ​欄位中設定任何其他引數。 多個以逗號分隔的引數可串連在一起。 例如:

    enableVersion=false,agentId=publish,chunkSize=50,maxTreeSize=500000,dryRun=false,filters=onlyModified,maxQueueSize=10

    note
    NOTE
    如需引數清單,請參閱下方的​ 引數 ​區段。
  10. 按下​ 完成 ​以儲存工作流程模型。

引數

名稱
預設
說明
路徑
要開始的根路徑
agentId
發佈
接收復寫的代理程式(publishpreview
chunkSize
50
要繫結到單一復寫中的路徑數量
maxTreeSize
500000
樹狀結構可視為小型的最大節點數
maxQueueSize
10
復寫佇列中的專案數上限
enableVersion
false
啟用版本設定
練習版
false
當設定為true時,實際上並不會呼叫復寫
userId
僅適用於工作。 在工作流程中,會使用呼叫工作流程的使用者
個篩選條件
節點篩選器名稱清單。 請參閱下方支援的篩選器

支援篩選器

名稱
說明
onlyModified
節點:自上次發佈後已修改的新節點和預先存在的節點
onlyActivated
節點:上次發佈前已發佈的節點

繼續支援

工作流程會以區塊處理內容,每個區塊代表要發佈的完整內容子集。 如果系統停止工作流程,則會從中斷處繼續。

監視工作流程進度

  1. 從AEM as a Cloud Service首頁,移至​工具 — 一般 — 工作

  2. 檢視與工作流程對應的列。 progress​資料行會顯示復寫進度。 例如,它可能會顯示41/564,而在重新整理時,它可能會更新為52/564。

    樹狀啟動進度

  3. 選取列並開啟它可提供工作流程執行狀態的更多詳細資訊。

    樹狀啟動狀態詳細資料

發佈內容樹狀工作流程 publish-content-tree-workflow

NOTE
此功能已淘汰,以支援更高效能的樹狀結構啟動步驟(可包含在自訂工作流程中)。
按一下這裡以深入瞭解這項已棄用的功能。

您可以選擇​ 工具 — 工作流程 — 模型 ​並複製​ 發佈內容樹狀結構 ​現成的工作流程模型,以觸發樹狀結構復寫,如下所示:

發佈內容樹狀工作流程卡

請勿叫用原始模型。 相反,請務必先複製模型並叫用該副本。

如同所有工作流程,您也可以透過API叫用。 如需詳細資訊,請參閱以程式設計方式與工作流程互動

或者,您也可以建立使用Publish Content Tree處理步驟的工作流程模型。

  1. 從AEM as a Cloud Service首頁,移至​工具 — 工作流程 — 模型

  2. 在「工作流程模型」頁面中,按畫面右上角的​建立

  3. 新增標題和名稱至您的模型。 如需詳細資訊,請參閱建立工作流程模型

  4. 從清單中選取建立的模型,然後按​編輯

  5. 在下列視窗中,將「處理步驟」拖放至目前的模型流程:

    處理步驟

  6. 在流程中選取「處理」步驟,並按扳手圖示選取​設定

  7. 選取「處理序」標籤,並從下拉式清單中選取「Publish Content Tree」,然後核取「處理常式進階」核取方塊

    樹狀結構啟動

  8. 在​ 引數 ​欄位中設定任何其他引數。 多個以逗號分隔的引數可串連在一起。 例如:

    enableVersion=true,agentId=publish,includeChildren=true

    note
    NOTE
    如需引數清單,請參閱下方的​ 引數 ​區段。
  9. 按下​ 完成 ​以儲存工作流程模型。

引數

  • includeChildren (布林值,預設: false)。 值false表示僅發佈路徑;true表示也發佈子項。

  • replicateAsParticipant (布林值,預設: false)。 如果設定為true,則復寫使用執行參與者步驟的主體userid

  • enableVersion (布林值,預設: false)。 此引數會決定複製時是否建立新版本。

  • agentId (字串值,預設值表示僅使用發佈代理程式)。 明確指定目標代理程式 — 例如,即時發佈層級為publish,預覽層級為preview

  • filters (字串值,預設值代表所有路徑都已啟動)。 可用的值包括:

    • onlyActivated — 僅啟動已(已)啟動的頁面。 作為重新啟用的一種形式。
    • onlyModified — 僅啟動已啟動且修改日期晚於啟動日期的路徑。
    • 以上可以用垂直號「|」進行「或」操作。 例如,onlyActivated|onlyModified

記錄

樹狀結構啟動工作流程步驟啟動時,會在「資訊」記錄層級記錄其設定引數。 啟動路徑時,也會記錄INFO陳述式。

在工作流程步驟已複製所有路徑之後,會記錄最終的INFO陳述式。

此外,您也可以將記錄器的記錄層級增加到com.day.cq.wcm.workflow.process.impl以下的DEBUG/TRACE,以取得更多記錄資訊。

如果有錯誤,工作流程步驟會以WorkflowException結束,這會包裝基礎例外狀況。

以下是在範例發佈內容樹狀工作流程期間產生的記錄範例:

code language-none
21.04.2021 19:14:55.566 [cm-p123-e456-aem-author-797aaaf-wkkqt] *INFO* [JobHandler: /var/workflow/instances/server60/2021-04-20/brian-tree-replication-test-2_1:/content/wknd/us/en/adventures] com.day.cq.wcm.workflow.process.impl.treeactivation.TreeActivationWorkflowProcess TreeActivation options: replicateAsParticipant=false(userid=workflow-process-service), agentId=publish, chunkSize=100, filter=, enableVersion=false
code language-none
21.04.2021 19:14:58.541 [cm-p123-e456-aem-author-797aaaf-wkkqt] *INFO* [JobHandler: /var/workflow/instances/server60/2021-04-20/brian-tree-replication-test-2_1:/content/wknd/us/en/adventures] com.day.cq.wcm.workflow.process.impl.ChunkedReplicator closing chunkedReplication-VolatileWorkItem_node1_var_workflow_instances_server60_2021-04-20_brian-tree-replication-test-2_1, 17 paths replicated in 2971 ms
recommendation-more-help
experience-manager-cloud-service-help-main-toc