6.2. camel-jms


camel-jms, camel-sjms 및 camel-sjms2 끝점을 원격 AMQ 7 브로커에 연결하는 데 지원되는 두 가지 방법이 있습니다.

  1. JBoss EAP 구성 메시징 가이드의 Artemis Resource Adapter to Connect to Red Hat JBoss AMQ 7 이라는 섹션에 설명된 대로 pooled-connection-factory를 사용하여 원격 연결을 구성합니다.
  2. 에 설명된 대로 connection-factory를 사용하여 원격 연결 장치 구성 connection-factory를 사용하여 remote-connector 구성

첫 번째 옵션은 연결 풀링 및 XA 트랜잭션 지원을 제공하므로 권장되는 방법입니다.

Cryostat 구독자를 사용하는 메시징 시나리오의 경우, Cryostat 7 사양에 따른 제약 조건으로 인해 JBoss EAP의 Fuse 7.13에서는 pooled-connection-factory를 지원하지 않습니다. 이러한 시나리오에서는 표준 풀링되지 않은 연결 요소를 구성하는 것이 좋습니다.

connection-factory를 사용하여 remote-connector 구성

  1. 원격 메시징 서버를 가리키는 outbound-socket-binding을 생성합니다.

    /socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=messaging-remote-throughput:add(host=localhost, port=61616)
  2. 1단계에서 생성된 outbound-socket-binding을 참조하는 remote-connector를 만듭니다.

    /subsystem=messaging-activemq/server=default/remote-connector=netty-remote-throughput:add(socket-binding=messaging-remote-throughput)
  3. 2단계에서 생성된 remote-connector를 참조하는 connection-factory를 생성합니다.

    /subsystem=messaging-activemq/server=default/connection-factory=simple-remote-artemis-connection-factory:add(entries=[java:/jms/RemoteJms],connectors=[netty-remote-throughput])

6.2.1. 메시징 브로커 및 클라이언트

초록

Fuse 7.13은 기본 내부 메시징 브로커와 함께 제공되지 않지만 외부 JMS 브로커와 상호 작용하도록 설계되었습니다.

JBoss EAP의 Fuse 7.13은 JBoss EAP에서 메시징 구성에 설명된 리소스 어댑터를 사용하여 외부 메시징 브로커에 액세스합니다.

JBoss EAP의 Fuse 7.13 메시징에 사용할 수 있는 외부 브로커, JCA 어댑터 및 Camel 구성 요소 조합에 대한 자세한 내용은 지원 구성을 참조하십시오.

JMS를 사용하여 JBoss EAP에서 Fuse를 사용하여 외부 브로커에 연결하는 방법에 대한 자세한 내용은 6.2절. “camel-jms” 을 참조하십시오.

Camel-jms 빠른 시작

JMS 메시지를 생성하고 사용하기 위해 Fuse on JBoss EAP에서 camel-jms 구성 요소를 사용하는 방법을 보여주는 빠른 시작이 제공됩니다.

이 빠른 시작에서 Camel 경로는 EAP_HOME/standalone/data/orders 의 파일을 사용하고 OrdersQueue 라는 메모리 내 ActiveMQ Artemis 큐에 콘텐츠를 배치합니다. 그런 다음 다른 Camel 경로는 OrdersQueue 내용을 사용하고 주문을 EAP_HOME/standalone/data/orders/processed 내의 개별 국가 디렉터리로 정렬합니다.

CLI 명령은 OrdersQueue CLI 스크립트를 생성 및 삭제합니다. 애플리케이션이 배포 및 배포 취소될 때 JMS OrdersQueue 를 생성하고 제거합니다. 이러한 스크립트는 EAP_HOME/quickstarts/camel-jms/src/main/resources/cli 디렉터리에 있습니다.

사전 요구 사항

이 빠른 시작을 실행하려면 작동 중인 버전의 Fuse 7.13이 있어야 합니다.

외부 AMQ 7 브로커에 연결하려면 원격 JMS communication에 JBoss AMQ 사용 지침도 따라야 합니다. 그런 다음 기본 연결 팩토리와 마찬가지로 연결 팩토리를 삽입할 수 있습니다.

@Resource(mappedName = "java:jboss/RemoteJmsXA")
ConnectionFactory connectionFactory;

퀵스타트 설정

  1. 독립 실행형 모드에서 JBOSS EAP를 시작합니다.
  2. EAP_HOME/quickstarts/camel/camel-jms로 이동합니다.
  3. mvn clean install -Pdeploy' 를 입력하여 빠른 시작을 빌드하고 배포합니다.
  4. http://localhost:8080/example-camel-jms으로 이동

'Orders Received'라는 페이지가 표시됩니다. 예제 애플리케이션에 주문을 보내면 국가당 주문 목록이 이 페이지에 나열됩니다.

퀵스타트 실행

EAP_HOME/quickstarts/camel/camel-jms/src/main/resources 디렉터리에는 몇 가지 예제 XML 파일이 있습니다. Camel은 5초마다 무작위로 파일을 선택하고 처리를 위해 EAP_HOME/standalone/data/orders 에 복사합니다.

콘솔은 각 주문에 발생한 작업을 자세히 설명하는 메시지를 출력합니다. 출력은 다음과 같습니다.

JmsConsumer[OrdersQueue]) Sending order to the UK
JmsConsumer[OrdersQueue]) Sending order to another country
JmsConsumer[OrdersQueue]) Sending order to the US

파일이 소비되면 http://localhost:8080/example-camel-jms/orders 로 돌아갈 수 있습니다. 각 국가에 대한 주문 수는 1로 증가해야합니다.

처리된 모든 주문은 다음 대상으로 나뉩니다.

EAP_HOME/standalone/data/orders/processed/uk
EAP_HOME/standalone/data/orders/processed/us
EAP_HOME/standalone/data/orders/processed/other

배포 취소

예제 배포를 취소하려면 EAP_HOME/quickstarts/camel/camel-jms 로 이동합니다. mvn clean -Pdeploy.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.