美文网首页
微服务如何保证接口幂等性

微服务如何保证接口幂等性

作者: 蓬莱辰 | 来源:发表于2020-02-26 17:57 被阅读0次

    1. 使用全局唯一ID

    在执行操作前先根据这个全局唯一ID是否存在,来判断这个操作是否已经执行(或者是新增操作还是更新操作)。如果不存在则把全局ID,存储到存储系统中,比如数据库、redis等。

    2. 多版本控制

    在更新的接口中增加一个版本号,来做幂等

    boolean updateGoodsName(int id,String newName,int version);
    update goods set name=#{newName},version=#{version} where id=#{id} and version<${version}
    

    3.条件控制

    update goods set name=#{newName}where id=#{id} and status<3;
    

    4. 分布式锁防止重复提交

    如:利用redis的setnx

    5. token验证

    相关文章

      网友评论

          本文标题:微服务如何保证接口幂等性

          本文链接:https://www.haomeiwen.com/subject/wdzbchtx.html