프라이빗 클라우드용 Edge 버전 4.54.00은 Qpid Broker-J 10.0.1과 함께 제공됩니다. 이
페이지에서는
자바 기반 브로커가 포함된 프라이빗 클라우드용 Edge의 apigee-qpidd 구성요소에 대한 메모리 및 디스크 고려사항을 설명합니다.
아래 섹션은 Apigee의
Qpid 사용 사례에만 적용되며 Apigee의 구성 메커니즘을 사용하여 Qpid를 조정하는 방법을 설명합니다.
Apigee의 Qpid
Apigee에서 Qpid는 두 가지 기본 워크플로에 사용됩니다.
- 애널리틱스
- 수익 창출
이러한 두 워크플로에서 메시지 프로세서는 메시지를 생성하며, 이 메시지는 일괄 처리되어 Qpid로 푸시됩니다. 애널리틱스의 경우 메시지는 Qpid 서버에서 읽고, 수익 창출의 경우 평가 서버 (관리 서버의 일부)에서 읽습니다. 읽은 후 일괄 처리된 메시지는 일괄 처리 해제되고 수집됩니다.
추천 구성
다음 섹션에서는 Qpid의 메모리 및 디스크에 권장되는 구성을 설명합니다. 이러한 구성은 애널리틱스 또는 수익 창출의 단일 메시지 크기 2KB를 기반으로 합니다. 기본 일괄 처리 크기가 50인 경우 Qpid의 각 메시지는 약 100KB입니다. Apigee 를 사용하면 프록시가 메시지 (애널리틱스 또는 수익 창출)를 수정하고 추가 정보를 추가할 수 있습니다. 극단적인 경우 단일 메시지의 크기와 Qpid의 전체 일괄 처리된 메시지가 크게 변경될 수 있습니다. 아래 섹션의 메모리 및 디스크에 관한 일반적인 권장사항은 이러한 경우에도 적용되지만 원활한 운영을 보장하기 위해 Qpid를 추가로 조정해야 할 수 있습니다.
메모리
Qpid 브로커는 오프힙 메모리와 힙 메모리라는 두 가지 유형의 메모리를 사용합니다. Qpid는 오프힙 메모리에 메시지를 저장하고 자체 내부 작업, 큐 및 교환으로의 직접 메시지 등에 힙 메모리를 사용합니다. 대부분의 경우 Apigee는 Qpid 브로커의 오프힙 메모리와 힙 메모리 간에 3:1 비율을 유지하는 것이 좋습니다.
오프힙 메모리의 메시지는 디스크에 유지됩니다. 또한 오프힙 메모리의 총 사용량이 특정 임계값을 초과하면 Qpid는 메시지를 디스크로 오버플로하도록 구성됩니다.
기본적으로 Apigee는 노드의 사용 가능한 메모리 를 기반으로 Qpid 브로커의 힙 메모리와 오프힙 메모리를 계산합니다. Apigee 스크립트에는 Qpid 브로커의 힙 메모리와 오프힙 메모리에 결합된 소프트 한도 4GB가 있습니다. 이러한 한도를 재정의하려면 아래 두 구성 을 사용하여 Qpid의 힙 메모리와 오프힙 메모리에 자체 값을 설정하면 됩니다.
- 힙 메모리 구성:
bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m - 오프힙 메모리 구성:
bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m
구성을 재정의하는 방법에 관한 자세한 내용은 Qpid 구성을 변경하는 방법을(를) 참조하세요.
자세한 내용은 메모리에 관한 Apache Qpid 참조를 확인하세요.
디스크
Qpid 브로커의 데이터 디렉터리는 $APIGEE_ROOT/data/apigee-qpidd입니다.
Qpid 브로커의 로그는 $APIGEE_ROOT/var/log/apigee-qpidd에 저장됩니다.
데이터 디렉터리를 호스팅하는 파일 시스템의 성능은 브로커 전체의 성능에 중요합니다. 최상의 성능을 위해서는 지연 시간이 짧고 다른 애플리케이션에서 사용하지 않는 기기를 선택하세요.
Qpid 브로커는 데이터 디렉터리에 메시지를 유지합니다. 기본적으로 브로커는 데이터 디렉터리를 호스팅하는 파일 시스템이 80% 가득 찰 때까지 메시지를 수락합니다. 각 Qpid 노드에서 아래 예시에 표시된 구성을 재정의하여 이 임계값을 수정할 수 있습니다.
bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60
이 예시에서 기본 파일 시스템이 60% 가득 차면 브로커는 새 메시지를 거부합니다.
Qpid 구성을 변경하는 방법
Qpid 구성을 변경하려면 다음 단계를 따르세요.
- 다음 파일을 만들거나 수정합니다.
$APIGEE_ROOT/customer/application/qpidd.properties
- 필요에 따라 구성을 추가, 삭제 또는 수정합니다.
예를 들어 Qpid 브로커의 최대 힙 메모리를 6GB로 변경하려면 파일에 다음 구성
재정의를 추가합니다.
bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
- 변경사항을 저장하고 파일이
apigee사용자가 소유하고 읽을 수 있는지 확인합니다.chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
qpidd프로세스를 다시 시작합니다.apigee-service apigee-qpidd restart