工作流程最佳實務 workflow-best-practices

以下列出最佳化Campaign工作流程效能、改善工作流程設計和選取正確設定的一般准則。

工作流程資料夾 workflow-folders

Adobe建議您在專用資料夾中建立工作流程。

如果工作流程會影響整個平台(例如清除流程),您可以考慮在內建中新增子資料夾 Technical Workflows 資料夾。

工作流程命名 workflow-naming

由於若未以預期方式執行,可讓工作流程更容易找到並疑難排解,Adobe建議您為工作流程指定適當的名稱和標籤:填寫工作流程的說明欄位,彙總要執行的程式,讓運算子輕鬆瞭解。

如果工作流程是涉及多個工作流程的流程的一部分,您可以明確輸入標籤;使用數字是排序工作流程的絕佳方式(依標籤)。

例如:

  • 001 — 匯入 — 匯入收件者
  • 002 — 匯入 — 匯入銷售
  • 003 — 匯入 — 匯入銷售明細
  • 010 — 匯出 — 匯出傳送記錄檔
  • 011 — 匯出 — 匯出追蹤記錄

工作流程嚴重性 workflow-severity

您可以在工作流程屬性中設定工作流程的嚴重性,在 Execution 標籤:

  • 正常
  • 生產
  • 重要

在建立工作流程時提供此資訊可協助您瞭解所設定流程的嚴重性。

此選項對行銷活動工作流程以外的工作流程沒有功能影響。

如果行銷活動有多個應同時執行的流程,則會優先執行嚴重性較高的行銷活動工作流程(作為行銷活動/作業的一部分建立的工作流程)。 根據選項NmsOperation_LimitConcurrency,預設情況下,一個行銷活動中只能同時執行10個流程。 例如,如果行銷活動包含25個工作流程,則嚴重性較高的工作流程將在10個流程的第一個集區中執行。

監視工作流程 workflow-monitoring

應監視在生產環境中執行的所有排程工作流程,以便在發生錯誤時收到警報。

在工作流程屬性中,選取「監督員」群組,預設值為 Workflow supervisors 或自訂群組。 請確定至少有一個運運算元屬於此群組,並設定了電子郵件。

開始建立工作流程之前,請記得定義工作流程主管。 如果發生錯誤,他們會收到電子郵件通知。 有關詳細資訊,請參閱 管理錯誤.

定期檢視 Monitoring 標籤以檢視作用中工作流程的整體狀態。 有關詳細資訊,請參閱 執行個體監督.

工作流程熱度圖可讓Adobe Campaign平台管理員監控執行個體的負載,並據此規劃工作流程。 有關詳細資訊,請參閱 工作流程監視.

活動 using-activities

CAUTION
您可以在相同的工作流程中複製和貼上活動。 不過,我們不建議跨不同的工作流程複製貼上活動。 某些附加至傳送和排程器等活動的設定,在執行目標工作流程時可能會導致衝突和錯誤。 我們建議您 複製 工作流程。 如需詳細資訊,請參閱 複製工作流程.

活動的名稱 name-of-the-activity

在開發工作流程時,所有活動都會有名稱,所有Adobe Campaign物件亦然。 雖然該名稱是由工具產生的,但我們建議您在設定時,以明確的名稱來重新命名它。 稍後執行此動作的風險在於,它可能會使用另一個先前活動的名稱中斷工作流程的活動。 因此,後續更新名稱會是一項困難的工作。

活動名稱可在以下連結中找到: Advanced 標籤。 不要把它們留名 queryquery1query11,但請為它們指定明確的名稱,例如 querySubscribedRecipients. 此名稱將會顯示在日誌中,如果適用,還會顯示在SQL記錄中,這有助於在設定工作流程時對其進行偵錯。

第一個和最後一個活動 first-and-last-activities

  • 一律以開始您的工作流程 Start 活動或 Scheduler 活動。 相關時,您也可以使用 External signal 活動。

  • 在建立工作流程時,僅使用一個 Scheduler 每個分支的活動。 如果工作流程的同一分支有多個排程器(相互連結),則要執行的任務數量將呈指數倍增,這將使資料庫大幅超載。 此規則也適用所有具有的活動 Scheduling & History 標籤。 進一步瞭解 正在排程.

  • 使用 End 每個工作流程的活動。 這可讓Adobe Campaign釋出用於工作流程中計算的暫存空間。 有關詳細資訊,請參閱: 開始和結束.

活動中的Javascript javascript-within-an-activity

初始化工作流程活動時,您可能想要新增JavaScript。 這可以在活動的中完成 Advanced 索引標籤中。

若要更輕鬆地尋找工作流程,我們建議在活動標籤的開頭和結尾使用雙破折號,如下所示: — 我的標籤 — 。

訊號 signal

在大多數情況下,您不會知道從哪裡呼叫訊號。 為避免此問題,請使用 Comment 欄位(在 Advanced 訊號活動的索引標籤,以記錄此活動的訊號預期來源。

工作流程更新 workflow-update

不應直接更新生產工作流程。 除非流程包含使用範本工作流程建立行銷活動,否則應先在開發環境中測試流程。 此驗證後,工作流程即可部署並在生產環境中啟動。

在開發或中繼環境中執行所有測試,而不是在生產環境中執行。 在這種情況下,無法確保效能。

封存的工作流程可能會保留在開發或測試平台上的封存資料夾中,但生產環境應儘可能保持乾淨。 如果舊的工作流程處於非使用中狀態,則應將其從生產環境中移除。

執行與效能 execution-and-performance

記錄 logs

JavaScript方法 logInfo() 是工作流程除錯的解決方案。 但是,它必須謹慎使用,尤其是經常執行的活動:它會讓記錄超載,並大幅增加記錄表格的大小。

保留臨時母體

保留兩次執行之間的中期母體結果 選項可在工作流程的兩個執行之間保留臨時表格。

它可以在工作流程屬性中使用 General 標籤,並可用於開發和測試目的,以監控資料及檢查結果。 您可以在開發環境中使用此選項,但切勿在生產環境中使用它。保留臨時表能會導致資料庫顯著變大,最終會達到上限。此外,它會減慢備份速度。

只保留最後一次執行工作流程的工作表。先前執行的工作表由清除 cleanup 每日執行的工作流程。

CAUTION
在​ 生產 ​工作流程中,切勿 ​勾選此選項。此選項用於分析結果,且僅供用於測試目的,因此只能在開發或中繼環境中使用。

記錄SQL查詢

在日誌中記錄SQL查詢 選項位於 Execution 工作流程屬性的索引標籤。 此選項會記錄來自不同活動的所有SQL查詢,並提供檢視平台實際執行內容的方法。 不過,此選項僅能使用 暫時 在開發和 未在生產環境中啟用.

最佳實務是在不再需要記錄時清除記錄。 系統不會自動清除工作流程歷史記錄:預設會保留所有訊息。 可透過以下方式清除歷史記錄: File > Actions 功能表,或按一下位於清單上方工具列中的「動作」按鈕。 選取永久刪除歷史記錄。
若要瞭解如何清除記錄檔,請參閱本節 檔案.

工作流程規劃 workflow-planning

您應將其他最佳實務套用至工作流程執行計畫,以避免發生下列問題:

  • 維持一天的穩定活動水準,並避免尖峰以防止執行個體過載。 若要這麼做,請在一天中平均分配工作流程開始時間。
  • 排程整夜載入資料,以減少資源爭用。
  • 長的工作流程可能會對伺服器和資料庫資源造成影響。 分割最長的工作流程,以減少處理時間。
  • 為縮短整體執行時間,請以簡化且更快的活動取代耗時的活動。
  • 請避免同時執行超過20個工作流程。 如果同時執行過多工作流程,您的平台可能會超載且變得不穩定。

在引擎選項中執行 execute-in-the-engine-option

在生產環境中,請避免在引擎中執行工作流程。 當 Execute in the engine 選項已核取至 Workflow properties,工作流程會優先執行,而所有其他工作流程會由工作流程引擎停止,直到此工作流程完成為止。

recommendation-more-help
cffff7e4-091f-472e-87ca-52087599f99d