服务总线队列重试策略:由于重试时间过长,WCF应用程序超时



我们有一个将数据放入服务总线队列的服务。我们为此实现了重试策略。但根据Windows Azure团队的说法,队列可能会下降1-3分钟。所以我们应该有一个重试策略,应该尝试超过3分钟。

如果我们将重试3分钟,那么等待响应的客户端将超时,默认超时时间为60秒。如果我们增加超时时间,那么客户必须等待3分钟,以防停电。

实现这个场景的最佳方法是什么?

a. Should we keep client waiting? which will not be good experience for Client.
b. Should we keep timeout same , but then client will retry and we will have duplicate records?

建议吗?

这是一个一般的场景,需要遵循的基本规则之一是不允许任何客户端等待。

所以根据我的理解和建议,你可以做的是:1. 检查Queue中是否有请求。2. 如果1为true,则不要重试3.如果1为假,重试

超时也是一个很好的异常,可以抛出到客户端或任何用户友好的消息(您将需要一个新的方法)。

点是客户端应该知道一切,如果他在等待,如果他是在队列之外,或者如果他在队列中,那么只有你可以创建健壮和用户友好的应用程序

最新更新