Account has embedded
Transactions
amount (positive for received transactions, negative for outgoing transactions)
사용자가 돈을 보내려고합니다. 충분한 돈이 있는지 확인하기 위해 계좌 잔고를 계산해야합니다. 의사 코드 :MongoDB로 돈을 이전하는 방법은 무엇입니까?
두 개의 동시 mongo 연결이 모두 쿼리 1을 통과하고 쿼리 2를 진행할 가능성은 없습니까? 사용자의 잔고가 1이고 쿼리 1을 동시에 통과 한 두 개의 동시 송금 요청 1이 트랜잭션에 성공적으로 추가되었다고 가정 해보십시오. 결과적으로 사용자는 -1의 균형을 맞 춥니 다.
어떻게 예방할 수 있습니까?
당신을 havent 한이 바라 보았다? – Sammaye
멋진 솔루션 인 것 같습니다. 별도의 잠금 컬렉션을 사용하는 것이 어떻게 현재 패턴 업데이트와 비교되는지 궁금합니다. – randomguy
현재가 하나의 문서에 대한 업데이트가 여러 문서가 아닌 동일한 문서에서만 작동하는 경우 – Sammaye