程序伪代码:
// 读取账户信息,并且余额加100
Account account = findAccount();
account.setBalance(account.getBalance() + 100);
updateAccount(account);
这个应用程序在多台机器上部署,如果保证数据的准确性。
程序伪代码:
// 读取账户信息,并且余额加100
Account account = findAccount();
account.setBalance(account.getBalance() + 100);
updateAccount(account);
这个应用程序在多台机器上部署,如果保证数据的准确性。
对这种情况,可以直接改下逻辑,不要先set再update, 直接传要修改的值 update XXX set balance = blance + change,更复杂的只能用事务了,甚至分布式事务。。。
参考:
有个东西叫幂等 https://www.zhihu.com/questio...
4 回答968 阅读
4 回答880 阅读
585 阅读
487 阅读
事务,然后加悲观锁或者乐观锁