2010-07-20 3 views

답변

1

eBay도 트랜잭션없이 실행되고 있다고 들었을 지 모르지만 아마도 Amazon은 비슷한 접근 방식을 취할 것입니다. The eBay Architecture에서

(슬라이드 18, 23) :

물론 더 클라이언트 측 거래

우리는 어떻게 그것을 해내하지 않습니다?

- 비동기 복구 이벤트 조정 배치 •

을 통해 복구가 장애 복구 • 비동기

이론적 근거

을 흐름 - -
DB 작업의주의 깊은 순서는 커플 링 가용성을 피 - 교착 상태

- 동시성 업데이트 - 분할 이음새없는 처리 ACID 트랜잭션이 존재하지 않는 경우, 당신은 확인 복구하거나 수동으로 일을 보상 할 필요가 (같은 형식 죄송합니다)

은 나에게, 그것은 보인다. 그러나 정확한 비즈니스 논리가 알려져 있으므로 적절한 오류 처리 또는 충돌 전략을 고안 할 수 있습니다. 또한 BPEL에서 일들이 비동기이며 보상 처리자를 작성하는 오류 처리 기능이 있습니다.

2

첫 번째 대답은 어렵습니다.

두 번째 대답 : 잠재적으로 재앙적인 결과가 발생할 수 있습니다.

아마존이 모든 거래를 제거하기를 원할 것입니다. ACID 조건을 완화하여 확장 성을 향상시키고 availability : 여전히 원 자성과 내구성을 원하지만, commutativity and idempotence에 대한 작업을 리팩터링해야하고 일관성과 격리를 줄이기 위해 compensating transactions을 추가해야합니다.

+0

+1 ACID의 새로운 정의에 대한 흥미로운 링크입니다. – ewernli

관련 문제