하나의 장면에 따라 배포

이제 제품 주문의 사용자는, 우리의 시스템은 할 세 가지 단계가 있습니다 :

제품의 1 이하 재고.

2. 사용자가 빨간 봉투, 붉은 봉투를 사용할 차감 사용자가있는 경우.

3. 주문을 만듭니다.

 

사례 1 : 생성 순서는 실패에 성공 주식 거래 시스템 공제, 공제 빨간 봉투 성공하지만 어떤 이유로이 시간 (예 : 초과 근무 등)했다.

Q : 어떻게 데이터 일관성 (C) 문제를 해결하기 위해?

A : 1. 한 번 시스템 가용성을 향상하는 데 실패, 우리는 다시 시도해야 작업을 만듭니다 (예 : 3).

  이 실패 2. 경우, 아마 시스템 문제이고,이 시간 우리는 재고를 촬영 한 후 추가 다시 보정 할 수 뺀 빨간 봉투 플러스 다시. 우리는 우리의 운영 데이터를 유지해야하는 경우 작업이 실패했습니다.

  어떤 원리 3. 일을 분산? 소위 분산 객체가 지역의 상황이 뭔가 짧고, 긴 가지로 볼 수있다,이 짧은 세 가지로 바뀌 긴 것입니다.

 

Q는 : 위의 대답은 부분적으로 시도해야 다시 시도? 어떻게 멱등을 보장하기 위해?

A : 1. 데이터 액세스 레이어 재시도 동작 그것에서? 문제 없어요. 주문을 만들기 전에 차수가 생성 되었기 때문에. 따라서, 데이터 액세스 계층 재 시도를 반복 주문의 문제가 발생하지 않습니다.

  2. Yewuluojiceng 거래 시스템 재시도 동작이? 아니오. 아무 문제, 순서가 창고에 넣어되지 않은 모든 프로세스 경우, 트랜잭션 호출에서 비즈니스 로직은 타임 아웃을 반환합니다. 이 경우, 결과는 실패의 상류에 반환됩니다. 그러나 실제 사업이 완료되었습니다. 재시도하면 이제 비즈니스 로직은 재 시도가 성공한다고 가정, 주문 번호를 다시합니다, 시스템은 두 개의 주문을해야합니다. 반복 주문의 결과. 캐시가있는 경우 주문 번호, 주문 번호 그래서 우리는이를 제거 할 때 어떻게 그것을 해결하기 위해? 시스템에 대한 사용자 액세스를 서버가 사용자에게 식별 토큰 및 고유 로컬 캐시에 바인딩 식별 주문 번호의 후단을 반환하기 전에, 다시 시도 다시 시도하십시오. 성공적으로 삭제 값을 다시 시도하십시오. 즉 실패하면 영구 실패에 대한 정보는 검사 및 이후의 보상을 용이하게한다.

  3. 게이트웨이 층 재시도 동일한 문제가된다.

 

Q : 당신이 성공하지 빨간색 버튼을 여러 번 호출하면 어떻게합니까?

A : 서비스 퓨즈 보호 시스템은 눈사태를 방지 할 수 있습니다. 단일 서비스는 사용할 수 없습니다 가능한 다른 서비스에 영향을주지 않습니다.

 

추천

출처www.cnblogs.com/gengshidong/p/11401464.html