项目难点场景——Go的Map的并发性

发钱记录:

司机接单,命中活动(缓存活动或者重新匹配活动),判断单数(若命中活动奖励->),【读取Go的Map判断是否发钱,没有的话】,发钱——>发钱记录(Go的map写入的Redis中的Map)。

之前有作弊的,并发请求,因为用的是Go中的MAP记录发奖过程,因为没有加锁,导致读取发钱记录——>发钱记录更新这个过程中,有新的请求,拿到了更新前的发钱记录,导致更新失败了。

这里的Go中的MAP应该使用Go 语言中的 sync.Map或者加锁。

你可能感兴趣的:(golang,开发语言,后端)