Show Menu
화제×

아키텍처 개요 작성 및 게시

이 페이지에서는 다음 주제를 다룹니다.
  • 게시 서버 소개
  • 아키텍처 개요
  • 등록 프로세스

전제 조건

작성자 및 게시 서버를 시작하기 전에 다음에 대한 사전 지식이 있어야 합니다.
  • AEM 토폴로지
  • AEM Screens 프로젝트 생성 및 관리
  • 장치 등록 프로세스
이 AEM Screens 기능은 AEM 6.4 스크린 기능 팩 2를 설치한 경우에만 사용할 수 있습니다. 이 Feature Pack에 액세스하려면 Adobe 지원 센터에 연락하여 액세스 권한을 요청해야 합니다. 권한이 있으면 # 에서 다운로드할 수 있습니다.

소개

AEM Screens 건축은 AEM Sites의 전통 건축과 닮았다. 컨텐츠는 AEM 작성자 인스턴스에서 작성되고 앞으로 복제되어 여러 게시 인스턴스로 전달됩니다. 이제 부하 균형 조정기를 통해 AEM 게시 팜에 연결할 수 있습니다. 여러 AEM 게시 인스턴스를 추가하여 계속해서 게시 팜의 크기를 조정할 수 있습니다.
예를 들어 , AEM Screens 컨텐츠 작성자는 게시 팜과 상호 작용하도록 구성된 특정 장치나 게시 팜과 상호 작용하도록 구성된 장치에 대한 정보를 얻는 AEM Screens 컨텐츠 작성자에 대해 제작 시스템에 명령을 발행합니다.
다음 다이어그램에서는 작성 및 게시 환경을 보여 줍니다.

건축설계

이 솔루션을 촉진하는 다섯 가지 아키텍처 구성 요소가 있습니다.
  • 작성자에서 게시로 컨텐츠 복제 - 장치별 표시
  • 게시에서 작성자(장치에서 수신된)로 바이너리 컨텐츠 역복제
  • 작성자에서 특정 REST API를 통해 게시로 명령 전송
  • 게시 인스턴스 간의 메시징을 통해 디바이스 정보 업데이트 및 명령 동기화
  • 게시 인스턴스의 작성자가 폴링하여 특정 REST API를 통해 장치 정보를 얻습니다.

컨텐츠 및 구성 복제(전달)

표준 복제 에이전트는 스크린 채널 컨텐츠, 위치 구성 및 디바이스 구성을 복제하는 데 사용됩니다. 이를 통해 작성자는 채널 업데이트를 게시하기 전에 채널의 컨텐츠를 업데이트하고 선택적으로 특정 유형의 승인 워크플로우를 진행할 수 있습니다. 게시 팜의 각 게시 인스턴스에 대해 복제 에이전트를 만들어야 합니다.
다음 다이어그램에서는 복제 프로세스를 보여 줍니다.
게시 팜의 각 게시 인스턴스에 대해 복제 에이전트를 만들어야 합니다.

스크린 복제 에이전트 및 명령

작성자 인스턴스의 명령을 AEM Screens 장치로 전송하기 위해 사용자 정의 화면별 복제 에이전트가 만들어집니다. AEM 게시 인스턴스는 이러한 명령을 장치로 전달하는 중재자 역할을 합니다.
이렇게 하면 작성자가 장치 업데이트를 보내고 작성 환경에서 스크린샷과 같은 장치를 계속 관리할 수 있습니다. AEM Screens 복제 에이전트는 표준 복제 에이전트와 같은 사용자 지정 전송 구성을 가집니다.

게시 인스턴스 간 메시징

대부분의 경우 명령은 한 번만 장치로 전송되도록 되어 있습니다. 그러나 로드 밸런싱된 게시 아키텍처에서는 장치가 연결되어 있는 게시 인스턴스를 알 수 없습니다.
따라서 작성자 인스턴스는 모든 게시 인스턴스에 메시지를 보냅니다. 단, 하나의 메시지만 장치로 전달되어야 합니다. 올바른 메시징을 위해서는 게시 인스턴스 사이에 일부 통신이 이루어져야 합니다. 이것은 Apache ActiveMQ Artemis를 사용하여 가능합니다 . 각 게시 인스턴스는 Oak 기반 Sling 검색 서비스를 사용하여 느슨하게 연결된 토폴로지에 배치되고 ActiveMQ가 구성되어 각 게시 인스턴스가 통신하고 단일 메시지 큐를 만들 수 있습니다. 스크린 장치는 부하 균형 조정기를 통해 게시 팜을 폴링하고 큐 맨 위에서 명령을 선택합니다.

역 복제

대부분의 경우, 명령 다음에 일부 유형의 응답이 Screens 장치에서 Author 인스턴스로 전달될 것으로 예상됩니다. 이 AEM Reverse 복제를 수행하려면
  • 표준 복제 에이전트 및 스크린 복제 에이전트와 유사하게 각 게시 인스턴스에 대해 역방향 복제 에이전트를 만듭니다.
  • 워크플로우 론처 구성은 게시 인스턴스에서 수정된 노드를 수신하고, 그 다음 워크플로우는 게시 인스턴스의 아웃박스에 장치 응답을 배치하는 워크플로우를 트리거합니다.
  • 이 컨텍스트의 역 복제는 장치에서 제공하는 바이너리 데이터(예: 로그 파일 및 스크린샷)에만 사용됩니다. 바이너리 데이터가 아닌 데이터를 폴링하여 검색됩니다.
  • AEM 작성자 인스턴스에서 폴링된 역 복제 기능은 응답을 검색하여 작성자 인스턴스에 저장합니다.

게시 인스턴스 폴링

작성자 인스턴스는 하트비트를 얻고 연결된 장치의 상태를 알기 위해 장치를 폴링할 수 있어야 합니다.
로드 밸런서를 ping하고 게시 인스턴스로 라우팅되는 장치입니다. 그런 다음 게시 인스턴스에 의해 장치의 상태가 모든 활성 장치 및 api/screens-dcc/devices/static API에서 제공되 는 게시 API를 통해 노출되고 단일 장치용 api/screens-dcc/devices/<device_id>/status.json이 표시됩니다.
작성자 인스턴스는 모든 게시 인스턴스를 폴링하고 장치 상태 응답을 단일 상태로 병합합니다. 작성자에 대해 폴링되는 예약된 작업은 cron 식에 따라 구성될 com.adobe.cq.screens.impl.jobs.DistributedDevicesStatiUpdateJob 수 있습니다.

등록

등록은 AEM 작성자 인스턴스에서 계속 시작됩니다. AEM Screens 장치가 작성자 인스턴스를 가리키며 등록이 완료되었습니다.
장치가 작성 환경에 등록되면 장치 구성 및 채널/예약 할당이 AEM 게시 인스턴스에 복제됩니다. 그런 다음 AEM Screens 장치 구성이 AEM 게시 팜 앞에 있는 로드 밸런서를 가리키도록 업데이트됩니다. 스크린 장치가 게시 환경에 성공적으로 연결되면 작성 환경에서 시작한 명령을 계속 받을 수 있고 스크린 장치를 작성 환경에 직접 연결할 필요가 없습니다.

다음 단계

AEM Screens의 작성자 및 게시 설정의 아키텍처 디자인을 이해하면 자세한 내용은 AEM Screens 에 대한 작성자 및 게시 구성을 참조하십시오.