我编写了一个Python Flask应用程序,并在两个不同的Web服务器上运行它的两个实例。每次向应用程序发出HTTP请求时,都会创建与MySQL数据库的新连接。在我的应用程序中,有一个帐户表,每个帐户都有一个整数余额。问题是,我发现如果用户对一个快速从账户余额中减去的URL路由发出多个请求,他们最终可能会出现负余额,因为这两个请求是同时执行的。
基本上我的问题是,我怎样才能这样做,以便当我在行的余额列上运行查询时,该行将被任何其他连接不可触及,其中可能有很多?我想将表格中的所有其他行保留为可编辑,我只想“锁定”一行,以便用户无法“双倍花费”他们的余额等,而不是为了性能而锁定整个表格
或许我接近这个完全错误 - 对不起,如果我,我对此很新。
当我第一次开始编写关于正确执行此操作的应用程序时,我确实在另一个帐户上提出了一个问题,但它被归结为地狱,现在我陷入了困境。
我已经调查了MySQL事务,但我不太了解它们,我认为我不应该在这里使用它们,或者我错了?
谢谢!