MSM 롤아웃 충돌 msm-rollout-conflicts
블루프린트 분기 및 종속 라이브 카피 분기 모두에서 동일한 페이지 이름의 새 페이지를 만들면 충돌이 발생할 수 있습니다.
이러한 충돌은 롤아웃 시 처리 및 해결해야 합니다.
충돌 처리 conflict-handling
블루프린트 및 라이브 카피 분기에 충돌하는 페이지가 있는 경우 MSM을 사용하여 처리 방법(또는 처리 여부)을 정의할 수 있습니다.
롤아웃을 차단하지 않도록 다음과 같은 정의를 사용할 수 있습니다.
-
롤아웃 시 우선 순위가 높은 페이지(블루프린트 또는 라이브 카피)
-
페이지 이름 변경(및 방법),
-
게시된 콘텐츠에 미치는 영향
Adobe Experience Manager(AEM)의 기본 비헤이비어(기본 제공)는 게시된 콘텐츠에 영향을 주지 않는다는 것입니다. 따라서 라이브 카피 분기에 수동으로 생성된 페이지가 게시되어 있는 경우 해당 콘텐츠는 충돌 처리 및 롤아웃 이후에도 계속 게시됩니다.
표준 기능 이외에도 맞춤화된 충돌 핸들러를 추가하여 다른 규칙을 구현할 수 있습니다. 또한 개별 프로세스로 게시 작업을 허용할 수도 있습니다.
예시 상황 example-scenario
다음 섹션에서는 새 페이지의 예를 사용해야 합니다 b
블루프린트 및 라이브 카피 분기 모두에 수동으로 만들어져서 다양한 충돌 해결 방법을 보여 줍니다.
-
블루프린트:
/b
마스터 페이지. 한 개의 하위 페이지가 있는 경우 bp-level-1.
-
live copy:
/b
라이브 카피 분기에 수동으로 생성된 페이지. 한 개의 하위 페이지,
lc-level-1
.- 게시에서 하위 페이지와 함께
/b
로 활성화됨.
- 게시에서 하위 페이지와 함께
롤아웃 이전
롤아웃 관리자 및 충돌 처리 rollout-manager-and-conflict-handling
롤아웃 관리자를 사용하여 충돌 관리를 활성화 또는 비활성화할 수 있습니다.
이 작업은 다음을 사용하여 수행됩니다. OSGi 구성 / 일별 CQ WCM 롤아웃 관리자:
-
수동으로 생성된 페이지와의 충돌 처리:
(
rolloutmgr.conflicthandling.enabled
)롤아웃 관리자가 블루프린트에 존재하는 이름으로 라이브 카피에 생성된 페이지의 충돌을 처리해야 하는 경우 true로 설정합니다.
AEM이 충돌 관리가 비활성화되었을 때 실행되는 사전 정의된 비헤이비어.
충돌 핸들러 conflict-handlers
AEM은 충돌 처리기를 사용하여 블루프린트에서 라이브 카피로 콘텐츠를 롤아웃할 때 발생하는 페이지 충돌을 해결합니다. 페이지 이름을 바꾸는 것은 이러한 충돌을 해결하는 일반적인 방법 중 하나입니다. 하나 이상의 충돌 핸들러를 작동하여 다양한 비헤이비어를 실행할 수 있습니다.
AEM은 다음을 제공합니다.
기본 충돌 핸들러 default-conflict-handler
기본 충돌 핸들러:
-
이(가) 호출됨
ResourceNameRolloutConflictHandler
-
이 핸들러를 사용하면 블루프린트 페이지가 우선 순위를 갖습니다.
-
이 처리기의 서비스 순위가 낮게 설정되어 있습니다(즉, 의 기본값 미만).
service.ranking
속성)을 사용하는 경우 사용자 지정된 처리기에 더 높은 순위가 필요하다고 가정합니다. 그러나 순위는 유연성을 보장하기 위한 절대적인 최소 조건이 아닙니다.
이 충돌 핸들러를 사용하면 블루프린트가 우선 순위를 갖습니다. 라이브 카피 페이지 /b
라이브 카피 분기 내에서 다음으로 이동 /b_msm_moved
.
-
live copy:
/b
(라이브 카피 내에서) 로 이동합니다.
/b_msm_moved
. 이는 백업 역할을 하며 콘텐츠가 손실되지 않도록 합니다.lc-level-1
은 이동하지 않습니다.
-
블루프린트:
/b
라이브 카피 페이지로 롤아웃됨
/b
.bp-level-1
는 라이브 카피로 롤아웃됩니다.
롤아웃 이후
맞춤화된 핸들러 customized-handlers
맞춤화된 충돌 처리기를 사용하면 고유한 규칙을 구현할 수 있습니다. 서비스 순위 메커니즘을 사용하여 이들 핸들러가 다른 핸들러와 상호 작용하는 방법을 지정할 수도 있습니다.
맞춤화된 충돌 처리기에는 다음이 있을 수 있습니다.
-
요구 사항에 따라 이름이 지정됩니다.
-
요구 사항에 따라 개발/구성됩니다. 예를 들어 라이브 카피 페이지가 우선 순위를 갖도록 핸들러를 개발할 수 있습니다.
-
를 사용하여 구성되도록 설계되었습니다. OSGi 구성; 특히
-
서비스 순위:
다른 충돌 처리기와 관련된 순서를 정의합니다(
service.ranking
).기본값은 0입니다.
-
충돌 처리가 비활성화되었을 때 실행되는 비헤이비어 behavior-when-conflict-handling-deactivated
수동으로 설정하는 경우 충돌 처리 비활성화를 선택하면 AEM은 충돌이 발생한 페이지에 어떤 조치도 취하지 않습니다(충돌이 발생하지 않은 페이지는 예상대로 롤아웃됨).
이 경우 라이브 카피가 사실상 우선됩니다. 블루프린트 페이지 /b
은 복사되지 않으며 라이브 카피 페이지 /b
그대로 두었습니다.
-
블루프린트:
/b
복사되지 않지만 무시됩니다.
-
live copy:
/b
똑같군
서비스 순위 service-rankings
OSGi 서비스 순위를 사용하여 개별 충돌 핸들러의 우선 순위를 정의할 수 있습니다.