transactions
というコレクションを用意して、ユーザー間ですべての通貨取引を保存したいと考えています。 transaction
を作成する前に、sender
に十分な金額のアカウントがあることを確認します。MongoDBの通貨取引
勘定残高については、私はオンデマンドで計算し、それを保存しない予定です。
競合状態を避けるためにMongoDBで使用できるパターンはありますか?
e。ユーザーAの残高が$ 10だとします。もし彼が同時に$ 10の2回の送金依頼をした場合、私は自分のアカウントでネガティブに終わることがあります。それを避ける方法はありますか?
実際、気にしないでください。私はこのレシピをCouchDBで見つけました。これはMongoDBでも完璧に動作します:http://blog.codekills.net/2014/03/13/atomic-bank-balance-transfer-with-couchdb/ –