如何处理服务层的幂等性?

时间:2011-01-09 12:12:52

标签: wcf service idempotent

我有一个SOA应用程序,我想在服务层上加入一些幂等机制。我正在使用WCF进行消息传递。

您如何处理应用中的幂等性?你有一些示例代码吗?我的目标是防止同一个消息(例如CreateOrder)被多次处理(如果这样配置)。

1 个答案:

答案 0 :(得分:1)

idempotency不是关于检测和停止正在处理两次的消息。它更多地与处理2次或更多次的消息有相同的副作用。因此,我只需要一个可以插入和更新的Store操作,而不是Append / Create / Update操作。

因此,在您的CreateOrder示例中,只需让客户端传递一个guid,如果服务不存在,将会插入该guid,如果存在则更新。