2

現在、Grails 2.4.4 でクレジット取引システムを開発しています。

ユーザーのクレジットの量を保持するクレジット モデルがあります。

class Credit {
    BigDecimal amount
    User user
}

問題は、ユーザーが取引するときに、金額が常に引き落とされたり貸方に記入されたりすることです。

整合性を維持するために悲観的ロックを試みました。しかし、そのユーザーは一度に 1 つのトランザクションしか実行できないため、トランザクションのボトルネックであることに気付きました。

これに代わるものはありますか?使用できる設計パターンはありますか? 私たちは、モデルを変更したり、他のアプローチを採用したりすることにオープンです。

4

1 に答える 1