Service 基于HyperLogLog的概率域服务幂等性

Service 基于HyperLogLog的概率域服务幂等性,service,soa,idempotent,ddd-service,Service,Soa,Idempotent,Ddd Service,我正在评估一种使用HyperLogLog[HLL]实现域服务幂等性的方法。 这种方法的目的是提供确保幂等性的一般方法 无需存储大量无用信息。唯一的要求是 允许偶尔重复(发送两封电子邮件而不是一封) 在我的场景中,每个服务请求都是一个带有toHashCode函数的消息对象。算法如下所示: 在收到请求时域服务计算HLL[S1]基数并将其存储为C1 请求散列[H]添加到HLL[S2]的副本,基数存储为C2 如果C1==C2,则请求被复制,并且S2应被丢弃 否则将处理请求并将哈希[H]添加到HLL[S1

我正在评估一种使用HyperLogLog[HLL]实现域服务幂等性的方法。

这种方法的目的是提供确保幂等性的一般方法 无需存储大量无用信息。唯一的要求是 允许偶尔重复(发送两封电子邮件而不是一封)

在我的场景中,每个服务请求都是一个带有toHashCode函数的消息对象。算法如下所示:

  • 在收到请求时域服务计算HLL[S1]基数并将其存储为C1
  • 请求散列[H]添加到HLL[S2]的副本,基数存储为C2
  • 如果C1==C2,则请求被复制,并且S2应被丢弃
  • 否则将处理请求并将哈希[H]添加到HLL[S1]
  • 有人遇到过类似的解决方案吗?(像)
    这种解决方案的缺点是什么