当你发现自己的才华撑不起野心时,就请安静下来学习吧。

Personal site

↑点击传送

接口幂等性解决方案

1.同步锁(单线程,集群可能会失效)
2.分布式锁如redis(实现复杂)
2.业务字段加唯一约束(简单)
3.令牌表+唯一约束(简单推荐)
4.mysql的insert ignore或者on duplicate key update(简单)
5.共享锁+普通索引(简单)
6.利用MQ或者Redis扩展(排队)
7.其他方案如多版本控制MVCC 乐观锁 悲观锁 状态机等。。。
对客户端请求排队或者单线程都可以处理幂等问题,需要根据具体业务选择合适的方案但必须前后端一起做,前端做了可以提升用户体验,后端则可以保证数据安全。

posted @ 2020-07-23 21:20  Joab-0429  阅读(680)  评论(0编辑  收藏  举报