我想知道如何在 SQL 数据库中处理资金以保持一致性。我想这些表格看起来像下面这样。
考虑以下场景:如果有两个玩家在玩,那么他们下注的钱已经从他们俩中扣除balance_usd
并添加到pot_usd
. 但是假设服务器在牌局中宕机了。这里的数据库的一致性大概意味着pot_usd
应该将钱退还给两个玩家,balance_usd
从而有效地取消这手牌。似乎单靠交易不能解决这个问题。扑克服务器的后端应该如何构建来处理这个问题?
table user
user_id
balance_usd
table game
game_id
pot_usd
...