zoukankan      html  css  js  c++  java
  • 接口幂等性

    什么是接口幂等性?

    他描述了一次或者多次请求某一个资源对于资源本身应该具有同样的结果。

    为什么要实现接口幂等性?

    使用幂等性最大的优势在于使接口保证任何幂等性操作,免去因重试等造成系统产生的未知的问题。

    如何实现接口幂等性?

    1、数据库唯一主键实现幂等性

    数据库唯一主键的实现主要是利用数据库中主键唯一约束的特性,使用分布式 ID 充当主键,保证在分布式环境下 ID 的全局唯一性。

    适用操作:插入,删除

    2、数据库乐观锁实现幂等性

    数据库乐观锁方案一般只能适用于执行更新操作的过程,我们可以提前在对应的数据表中多添加一个字段,充当当前数据的版本标识。如:新增一个visoion字段每次更新进行判断更新

    适用操作:更新

    3、防重 Token 令牌实现幂等性

    调用方在调用接口的时候先向后端请求一个全局 ID(Token),请求的时候携带这个全局 ID 一起请求(Token 最好将其放到 Headers 中),后端需要对这个Token 作为 Key,用户信息作为 Value 到 Redis 中进行键值内容校验,如果 Key 存在且Value 匹配就执行删除命令,然后正常执行后面的业务逻辑。如果不存在对应的 Key 或Value 不匹配就返回重复执行的错误信息,这样来保证幂等操作。

     适用操作:插入,更新,删除

  • 相关阅读:
    jar 命令 打包装class文件的文件夹
    快捷下载 sourceForge下的资源
    win7 解决git clone 连接被拒绝—hosts文件过期
    tp_link路由器 重新设置
    gradle研究
    开始玩mondrian
    让eclipse启动时拥有jre
    qt md5加密,base64编码解码
    qt 网络库使用介绍
    c 正则表达式
  • 原文地址:https://www.cnblogs.com/DIVEY/p/14892116.html
Copyright © 2011-2022 走看看