2011-03-14 3 views
1


다음 시나리오를 사용하고 있습니다.
대기열에서 수신 대기하고 "외부 세계"에서 메시지를 수신하는 인터페이스 서버가 있습니다. 그런 다음이 서버는 "내부"비즈니스 용 서비스를 호출하고 다른 서비스를 호출합니다.
이러한 서비스는 각각 다른 시스템에 상주 할 수 있으며 해당 문제에 대해 클러스터링 될 수 있습니다.
나는 이러한 서비스와 기계에 걸쳐 트랜잭션의 개념이 필요합니다.
내 개발 스택에는 J2SE 환경에서 Spring (3.0.5) 및 JPA 2.0 (백그라운드에서 최대 절전 모드)이 포함됩니다.
app-server없이 이것을 사용할 수 있습니까? 우리는 가장 중요한 것들이 서비스 추상화, 집중 DI 및 무거운 앱없이 작업 할 수있는 많은 이유 때문에 Spring과 함께 가기로 결정했습니다. (예를 들어, atomikos와 같은) 외부 JTA 트랜잭션 관리자를 플러그인한다고 가정합니다. -섬기는 사람. 나는 우리가 app-server에서 spring을 사용할 수 있다는 것을 알고있다. 그러나 누군가 이것을 추천한다면 나는 왜 이것이 끝나야하는지 듣고 싶다. 나는 스프링을 맞고 모든 app-server를 갈 수 있다고 가정한다.트랜잭션 컨텍스트가있는 스프링 원격 서비스

이 게시물을 읽는 사람이라면 누구나 다시 안심 하셔도됩니다. 그렇습니다. 분산 트랜잭션의 문제가있는 문제를 생각해 봤지만 서비스의 비즈니스 논리이므로 이러한 트랜잭션이 필요하다고 생각합니다. 일부 서비스는 많은 압박을받을 것이기 때문에 기계를 가로 질러 갈 필요가 있습니다. 사전에

감사합니다,
잇대

+0

http://www.javaworld.com/jw-01-2009/jw-01-spring-transactions.html –

+0

@ 트위터 링크를 사용해 주셔서 감사합니다. 그러나 문서에서 분산 트랜잭션 리소스를 가로 지르지 않고 컴퓨터를 가로 지르지 않아야합니다. – Ittai

답변

1

다음 atomicos 스프링 통합 예제를 보라.
JBoss는 실제로 Spring이 모든 DI 등을 포함하고있는 동안 필요한 분산 트랜잭션을 제공했습니다.
IOC가 더 깨끗하고 편안하다고 느끼면서 우리는 여전히 봄을 유지했습니다.
jboss에서 CDI를 사용해야 할 수도 있지만 레이더에는 없었습니다.

0

우리는 생산에 아파치 톰캣과 오라클 데이터베이스에 분산 트랜잭션 (XA)를위한 봄 3 Atomikos을 사용하므로이 우리에게 매우 유용한 설정이. 우리는 봄과 제이보스를 사용하여 종료

http://www.atomikos.com/Documentation/SpringIntegration

+0

설정에 대해 좀 더 자세히 설명해 주시겠습니까? 여러 시스템에서 분산 트랜잭션을 사용합니까? 또는 동일한 시스템의 다양한 리소스에 걸쳐 있습니다. 이전 솔루션은 내가 찾고있는 것이며 링크에서 나는 그것에 대한 언급을 찾지 못했습니다. – Ittai

+0

안녕하세요, 우리는 다른 데이터베이스에 대한 트랜잭션을 배포하고 다른 톰캣에는 배포하지 않습니다. 우리는 아직 통신을 위해 JMS 또는 AMQP를 사용하지는 않지만 웹 서비스를 제공하며 여기서는 분산 트랜잭션에 의존하지 않습니다. –

+0

감사하지만 이것은 현재보고있는 시나리오가 아닙니다. – Ittai