在我当前的项目中,我有一个想法,即在主题订阅上使用过滤器/规则来自定义重试策略。
我从 Azure 函数中的主题收到一条消息,并尝试将其发送到远程服务。如果服务抛出 Timeout 异常,我想在消息中添加一个名为 PostponeUntil 且具有特定日期时间(例如一小时)的自定义属性,再次将其添加到主题中,然后使用订阅规则过滤掉这条消息,直到需要重试。是否可以使用 SqlFilter 做这样的事情:
var filter = new Microsoft.Azure.ServiceBus.SqlFilter("GETDATE() = PostponedUntilDateTime");
如果没有,我所拥有的场景有哪些替代方案?