幂等性问题

    科技2025-08-03  13

    一、需要避免的问题

    1.用户多次点击提交 2.用户退回页再次提交 3.微服务调用,由于网络问腿,导致请求失败,feign触发重试机制 …

    二、一些自带幂等的操作

    1.同样的select,delete语句, 2.固定的update语句 ,把1改成0等等 3.insert语句以ID为主键插入。

    三、如何保证幂等

    1.令牌机制

    获得令牌,对比令牌,删除令牌应该是个原子性操作

    2.锁

    1.悲观锁 select * from tab where id =1 for update 2,乐观锁 带版本号的更新

    3.唯一约束

    1.数据库唯一约束 主键,唯一索引等 2.redis set防虫 例如MD5值唯一等

    Processed: 0.040, SQL: 8