golang并发安全试验-2(持更)

场景-抢红包

首先我们来考虑一个场景–红包。 这里有个跨年红包,金额100,我们让阿猫,阿狗同时来抢这个红包,直到这个红包余额变为0。

思路

在高用户量和高并发的场景下,如果做到实时的红包分发是不合理的。如果在锁的处理上没有考虑全面,很容易出现重复红包,重复扣款的情况。 所以我们采用另一种思路,预先随机分割红包,当用户去抢的时候,其实是在获取已分配红包的索引。

环境

Table of Contents