请求有并发的时候,该怎么处理数据
系统在接受第三方回调的时候, 第三方如果没有收到成功响应,每隔几秒回调,每次会同时发 2 次请求
但系统又要保证回调记录里同一个订单只要收到过回调记录就不记录剩下的回调了
那要确保间隔很短时间内,只认第一次回调的数据,请教下这个是要在程序里做处理,还是直接在数据库做处理
后台是 springboot 数据库是 mysql
当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过, 如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和 处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱