WebSphere Application Server에서 트랜잭션 지원

트랜잭션 지원은 WebSphere® Application Server 내의 트랜잭션 서비스에서 제공됩니다. 애플리케이션이 트랜잭션을 사용하는 방법은 애플리케이션 컴포넌트 유형에 따라 다릅니다.

트랜잭션은 자원에 대한 다중 업데이트가 업데이트 전체가 영구적이 되거나 하나도 영구적이 되지 않는 아토믹(개별 작업 단위의)이 될 수 있는 활동 단위입니다. 예를 들어, SQL COMMIT문 처리 중에 데이터베이스 관리자는 관계형 데이터베이스에 대한 다중 SQL문을 자동 커미트합니다. 이런 경우, 트랜잭션은 데이터베이스 관리자 내에 전부 포함되어 자원 관리자 로컬 트랜잭션(RMLT)으로 간주될 수 있습니다. 일부 컨텍스트에서 트랜잭션은 논리적 작업 단위(LUW)로 참조됩니다. 트랜잭션이 다중 자원 관리자에 관여하는 경우(예: 다중 데이터베이스 관리자) 외부 트랜잭션 관리자는 개별 자원 관리자를 조정해야 합니다. 다중 자원 관리자로 분산되는 트랜잭션은 글로벌 트랜잭션이라고 합니다. WebSphere Application Server는 글로벌 트랜잭션을 조정할 수 있는, 수신된 글로벌 트랜잭션에서 참여자가 될 수 있는 트랜잭션 관리자이며 자원 관리자 로컬 트랜잭션이 실행될 수 있는 환경도 제공할 수 있습니다.

애플리케이션이 트랜잭션을 사용하는 방법은 다음과 같이 애플리케이션 컴포넌트의 유형에 따라 다릅니다.
  • 세션 Bean은 컨테이너 관리 트랜잭션(Bean이 트랜잭션 관리를 컨테이너에 위임) 또는 Bean 관리 트랜잭션(Bean이 트랜잭션 자체를 관리하는 컴포넌트 관리 트랜잭션) 중 하나를 사용할 수 있습니다.
  • 엔티티 Bean은 컨테이너 관리 트랜잭션을 사용합니다.
  • 웹 컴포넌트(서블릿) 및 애플리케이션 클라이언트 컴포넌트는 컴포넌트 관리 트랜잭션을 사용합니다.

WebSphere Application Server는 XAResource 인터페이스를 통해 자원 관리자 조정을 지원하고 CORBA OTS(Object Transaction Service) 프로토콜 또는 Web Service Atomic Transaction(WS-AtomicTransaction) 프로토콜을 지원하는 트랜잭션 관리자로 분산 글로벌 트랜잭션에 참여하는 트랜잭션 관리자입니다. WebSphere Application ServerJava™ EE Connector 1.5 자원 어댑터로 가져온 트랜잭션에도 참여합니다. 분산 트랜잭션 조정이 필요하지 않은 경우 WebSphere 애플리케이션이 데이터베이스, JMS 큐, JCA 커넥터와 로컬 트랜잭션 지원을 통해 상호 작용하도록 구성할 수도 있습니다.

[z/OS]XAResource 기반 자원 관리자의 조정을 지원하는 것뿐만 아니라 WebSphere Application Server for z/OS®는 RRS(z/OS resource recovery services)를 통해 자원 관리자의 조정도 지원합니다. RRS 호환 자원 관리자에는 DB2®, WebSphere MQ, IMS™, CICS®가 포함됩니다. IBM® WebSphere Application Server for z/OS는 동일한 글로벌 트랜잭션에서 RRSTransactional 자원 관리자와 XA 가능 자원 관리자의 혼합을 조정할 수 있습니다.

[z/OS]트랜잭션 지원을 제공하는 자원 관리자는 2단계의 조정을 지원하는(XAResource 인터페이스를 제공하거나 RRS를 지원하여) 자원 관리자와 1단계의 조정만 지원하는(예: LocalTransaction 인터페이스를 통해) 자원 관리자로 분류할 수 있습니다. WebSphere Application Server 트랜잭션 지원은 원하는 수의 2단계 가능 자원 관리자에 대해 트랜잭션 내에서 조정을 제공합니다. 한 개의 1단계 가능 자원 관리자가 WebSphere 트랜잭션이 이 경우 필요하지 않더라도 다른 자원 관리자가 없는 경우 트랜잭션 내에서 사용되도록 할 수도 있습니다.

[AIX Solaris HP-UX Linux Windows][IBM i]트랜잭션 지원을 제공하는 자원 관리자는 2단계의 조정을 지원하는(XAResource 인터페이스를 제공) 자원 관리자와 1단계의 조정만 지원하는(예: LocalTransaction 인터페이스를 통해) 자원 관리자로 분류할 수 있습니다. WebSphere Application Server 트랜잭션 지원은 원하는 수의 2단계 가능 자원 관리자에 대해 트랜잭션 내에서 조정을 제공합니다. 한 개의 1단계 가능 자원 관리자가 WebSphere 트랜잭션이 이 경우 필요하지 않더라도 다른 자원 관리자가 없는 경우 트랜잭션 내에서 사용되도록 할 수도 있습니다.

정상적인 상황에서는 1단계의 커미트 가능 자원과 2단계 커미트 가능 자원을 동일한 글로벌 트랜잭션에서 혼합할 수 없습니다. 1단계의 커미트 자원은 2단계 커미트의 준비 단계를 지원할 수 없기 때문입니다. 동일한 글로벌 트랜잭션에서 혼합 가능 자원을 포함할 수 있는 몇 개의 특수한 상황이 있습니다.
  • 트랜잭션에 참여하는 한 개의 1단계 커미트 자원 제공자만 있고 트랜잭션에 참여하는 모든 2단계 커미트 자원 제공자는 읽기 전용 형식으로 사용되는 시나리오에서 가능합니다. 이런 경우, 2단계의 커미트 자원 모두는 2단계의 커미트의 준비 단계 중에 모두 읽기 전용으로 설정됩니다. 1단계 커미트 자원 제공자가 모든 업데이트를 완료하는 유일한 제공자이기 때문에 1단계의 커미트 자원은 준비할 필요가 없습니다.
  • 하나 이상의 2단계 커미트 자원 제공자가 포함된 트랜잭션에 참여하는 1단계 커미트 자원 제공자가 있고 마지막 참가자 지원이 사용되는 시나리오에서 가능합니다. 마지막 참가자 지원을 사용하면 동일한 글로벌 트랜잭션에서 원하는 수의 2단계 커미트 가능 자원이 포함된 한 개의 1단계 커미트 가능 자원 사용이 가능합니다. 마지막 참가자 지원에 대한 자세한 정보는 동일한 트랜잭션에서 1단계 및 2단계 커미트 자원 사용의 내용을 참조하십시오.

ActivitySession 서비스는 글로벌 트랜잭션 환경에서 제공된 선택적 작업 단위(UOW) 범위를 제공합니다. 이는 다중 1단계 자원 관리자 조정에 사용 가능한 분산 컨텍스트입니다. WebSphere EJB 컨테이너 및 배치 툴링은 Java EE 프로그래밍 모델에 대한 확장기능으로 ActivitySessions를 지원합니다. 엔터프라이즈 Bean은 ActivitySession 컨텍스트로 영향을 받는 라이프사이클을 사용하여 트랜잭션 컨텍스트에 대한 대체로 배치됩니다. 그러면 애플리케이션은 EJB 메소드의 기간 동안이 아니라 클라이언트가 범위 지정한 ActivitySession 기간에 대해 자원 관리자와 상호 작용할 수 있으며 자원 관리자 로컬 트랜잭션 결과는 ActivitySession으로 지시됩니다. ActivitySession에 대한 자세한 정보는 ActivitySession 서비스 사용의 내용을 참조하십시오.

[z/OS]트랜잭션 클래스를 사용하여 워크로드 관리를 위한 클라이언트 워크로드를 분류할 수 있습니다. 워크로드는 별도의 하위(servant) 리젼을 대상으로 하며 각각은 적절한 서비스 클래스로 정의된 목표를 가지는 다른 WebSphere 트랜잭션입니다. 각 트랜잭션은 하위(servant) 리젼 프로세스에서 자체 WLM 영역에서 디스패치되고 해당 서비스 클래스의 목표에 따라 관리됩니다. 워크로드 관리가 큐 관리자로 보는 서버 제어기는 클라이언트 요청에 연관된 영역을 사용하여 작업의 우선순위를 관리합니다. 작업에 높은 우선순위가 있는 경우, 워크로드 관리는 작업을 서버에서 높은 우선순위의 하위(servant)로 지시할 수 있습니다. 작업의 우선순위가 낮은 경우, 워크로드 관리는 작업을 낮은 우선순위의 하위(servant)로 지시할 수 있습니다. 영향은 동일 서버 내의 우선순위에 따라 작업을 파티셔닝하는 것입니다.


주제 유형을 표시하는 아이콘 개념 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cjta_trans
파일 이름:cjta_trans.html