289.11. 트랜잭션 지원


289.11.1. BAPI 트랜잭션 모델

SAP Component는 SAP와의 아웃 바운드 통신을 위해 BAPI 트랜잭션 모델을 지원합니다. 변환된 옵션이 있는 URL이 있는 대상 끝점이 true 로 설정된 경우 끝점의 아웃바운드 연결에서 상태 저장 세션이 시작되고 Camel Synchronization 오브젝트를 교환에 등록합니다.

이 동기화 오브젝트는 BAPI 서비스 메서드 BAPI_TRANSACTION_COMMIT 를 호출하고 메시지 교환 처리가 완료되면 상태 저장 세션을 종료합니다. 메시지 교환 처리가 실패하면 동기화 개체는 BAPI 서버 메서드 BAPI_TRANSACTION_ROLLBACK 을 호출하고 상태 저장 세션을 종료합니다.

289.11.2. RFC 트랜잭션 모델

tRFC 프로토콜은 고유한 트랜잭션 식별자(TID)로 각 트랜잭션 요청을 식별하여 AT-MOST-ONCE 전달 및 처리 보장을 수행합니다. TID는 프로토콜로 전송된 각 요청과 함께 제공됩니다. tRFC 프로토콜을 사용하여 전송 애플리케이션은 요청을 보낼 때 고유한 TID를 사용하여 요청의 각 인스턴스를 식별해야 합니다. 애플리케이션은 지정된 TID로 요청을 여러 번 보낼 수 있지만, 프로토콜은 요청이 수신 시스템에서 가장 한 번에 전달 및 처리됩니다. 애플리케이션은 요청을 전송할 때 통신 또는 시스템 오류가 발생할 때 주어진 TID로 요청을 재전송하도록 선택할 수 있으며, 따라서 수신 시스템에서 해당 요청이 전달 및 처리되었는지에 대한 의심의 여지입니다. 통신 오류가 발생할 때 요청을 다시 전송하면 TRFC 프로토콜을 사용하는 클라이언트 애플리케이션에서 요청에 대한 EXACTLY-ONCE 전달 및 처리 보장을 보장할 수 있습니다.

289.11.3. 어떤 트랜잭션 모델을 사용할 수 있습니까?

BAPI 트랜잭션은 애플리케이션 수준 트랜잭션이며, 이는 SAP 데이터베이스의 BAPI 방법 또는 RFC 기능에 의해 수행되는 지속적인 데이터 변경에 대한 ACID 보장을 제공합니다. RFC 트랜잭션은 BAPI 방법 및/또는 RFC 기능에 대한 요청에 대한 전달 보장(AT-MOST-ONCE, EXACTLY-ONCE, EXACTLY-ONCE, EXACTLY-ONCE-IN-ORDER)을 부과한다는 점에서 통신 트랜잭션입니다.

289.11.4. 트랜잭션 RFC 대상 끝점

다음 대상 끝점에서는 RFC 트랜잭션을 지원합니다.

  • sap-trfc-destination
  • sap-qrfc-destination

단일 Camel 경로에는 여러 트랜잭션 RFC 대상 끝점이 포함될 수 있으며, 여러 RFC 대상에 메시지를 보내고 동일한 RFC 대상에 여러 번 메시지를 보낼 수 있습니다. 이는 Camel SAP 구성 요소가 경로를 따라 통과하는 각 Exchange 오브젝트에 대해 많은 트랜잭션 ID(TID)를 추적해야 함을 의미합니다. 이제 경로 처리가 실패하고 다시 시도해야 하는 경우 상황이 매우 복잡해집니다. RFC 트랜잭션 의미 체계에서는 경로를 따라 각 RFC 대상이 처음 사용된 TID를 사용하여 호출해야 합니다(및 대상 각각에 대한 TID가 서로 다른 위치). 즉, Camel SAP 구성 요소는 경로를 따라 어느 시점에서 사용되었는지 추적하고 TID를 올바른 순서로 재생하도록 이 정보를 기억하는 것입니다.

기본적으로 Camel은 Exchange 에서 경로에 있는 위치를 확인할 수 있는 메커니즘을 제공하지 않습니다. 이러한 메커니즘을 제공하려면 CurrentProcessorDefinitionInterceptStrategy 인터셉터를 Camel 런타임에 설치해야 합니다. Camel SAP 구성 요소가 있는 경로의 TID를 추적하려면 이 인터셉터를 Camel 런타임에 설치해야 합니다. 인터셉터 구성 방법에 대한 자세한 내용은 “tRFC 및 qRFC 대상의 인터셉터” 을 참조하십시오.

289.11.5. 트랜잭션 RFC 서버 끝점

다음 서버 끝점에서는 RFC 트랜잭션을 지원합니다.

  • sap-trfc-server

Camel exchange processing a transactional request encounters a processing error, Camel은 표준 오류 처리 메커니즘을 통해 처리 오류를 처리합니다. 교환이 오류를 다시 호출자에게 전달하도록 Camel 경로 처리가 구성된 경우 교환을 시작한 SAP 서버 끝점이 오류를 기록하고 전송 SAP 시스템에 오류를 알립니다. 그런 다음 전송 SAP 시스템은 동일한 TID로 다른 트랜잭션 요청을 전송하여 요청을 다시 처리함으로써 응답할 수 있습니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat