美文网首页
高并发下的接口幂等性解决方案

高并发下的接口幂等性解决方案

作者: snakeSkin | 来源:发表于2020-02-18 01:31 被阅读0次

高并发下的接口幂等性解决方案

1.token机制,防止页面重复提交

流程如下:

  • 1.发送方记录token(GUID) (通常保存到redis)
  • 2.发送提交接口 带上发送方token
  • 3.将token从redis中删除token,如果成功删除说明第一次执行,如果删除失败即已经删除过,说明该消息已经被消费。

存在问题

这样的方式存在的问题主要还是性能消耗
因为从流程可以看到,发送方需要额外调用一次redis,接收方也需要额外调用一次redis 而且是每次都要调用。无论这条消息是不是重复的。

2.使用数据库唯一主键

这样的操作实际上是有特殊情况才能使用,比如最终数据是要落到DB上的。这样的情况可以使用GUID或者其他token方案,通过设置唯一键的方式将要落地的数据顺便做幂等验证。

优势

这样做相比redis方式的优势就是不需要额外操作,因为幂等的保证是顺便的。

存在问题

使用范围有限,并不是任何幂等操作一定会涉及数据库操作。另外也需要为业务增加唯一主键。

可选唯一ID生成方式

  • UUID
  • snowflake
    。。。

相关文章

  • 【转载】高并发下接口幂等性解决方案

    高并发下接口幂等性解决方案 一、幂等性概念在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影...

  • 高并发下的接口幂等性解决方案

    高并发下的接口幂等性解决方案 1.token机制,防止页面重复提交 流程如下: 1.发送方记录token(GUID...

  • 高并发下的接口幂等性解决方案!

    一、背景 我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 前端重复提交选...

  • 接口幂等性

    接口幂等性 什么是接口幂等性? 最简单想到的实现接口幂等性(重复提交)的操作是什么? 最简单稍靠谱的解决方案是什么?

  • 高并发下,如何保证接口的幂等性?

    高并发下,如何保证接口的幂等性? 幂等性就是同一个操作执行多次,产生的效果一样。如 http 的 get 请求,数...

  • 高并发下接口幂等性解决方案

    一、幂等性概念 在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方...

  • 高并发下接口幂等性解决方案

    一、幂等性概念 二、分布式系统 中的幂等性 在编程中,一个幂等操作的特点是其任意多次执行所产生的影响与一次执行的影...

  • 高并发下接口幂等性解决方案

    一、幂等性概念 在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方...

  • 高并发下的接口安全设计

    之前写过接口幂等性问题,高并发下的接口幂等性如何实现,今天再研究一下接口的安全性问题。 当我们在跟第三方系统进行对...

  • 高并发下接口幂等性方案

    一、概述 数据的正确性是系统质量安全的重要标识,关注数据正确任何情况下都不能忽视。 二、背景介绍 我们实际系统中有...

网友评论

      本文标题:高并发下的接口幂等性解决方案

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