首页 2019年6月

2019年6月

  • 模拟电子钱包账户并发转账环境产生的脏数据及改进办法(java+mysql)

    模拟电子钱包账户并发转账环境产生的脏数据及改进办法(java+mysql)

    一、场景简述假设用户A线上消费,其账户内有余额100元,现在他给B商户付款99元,写成最简单的业务逻辑大概是这样的:数据库查询(SELECT)A账户余额(100)判断A账户余额是否够支付抵扣(100 - 99 >= 0)如果够抵扣,数据库执行扣款操作(UPDATE),商户B加款(A->Banance -= 99, B->Banance += 99)如果不够抵扣,不执行操作这是一个典型的单线程消费模式,显然如果每次都执行这一个操作,这个算法是正确无误的,下面进行一个稍微复杂的操作,假设A线上消费,A...

    Java 2019-06-07 318 0
1

运行

«   2019年6月   »
12
3456789
10111213141516
17181920212223
24252627282930
Top