[英]Service Bus 2.6.6 Paired Namespace Enable Syphon
如何使工作成对命名空间接收方将邮件从积压队列移动到主队列。 它似乎适用于发送方,但是使用接收方设置EnableSyphon = true似乎不起作用。 我总是可以看到积压队列中的消息不断增长。 我可以找到的所有信息都是此Code Block,但是由于Service Bus 2.4 Messaging.Factory没有开放方法。
factory = MessagingFactory.Create(SB_Primary_NS_Address);
factory.PairNamespace(new SendAvailabilityPairedNamespaceOptions
{
EnableSyphon = true,
TransferQueueCount = 10,
MessagingFactory = paired-NS_factory,
NamespaceManager = paired-NS_manager
});
factory.Open();
他们更改了将命名空间与最新版本配对的方式。 相反,您可以通过传入PairedNamespaceOptions实例从主消息传递工厂调用Async函数(PairNamespaceAsync)。 请注意,返回的Task实际上是Promise类型的,因此您不必在Task上调用Start(),因为它已经启动,只需调用Waiting()。
此外,还必须确保辅助命名空间和MessagingFactory具有管理级别的安全性。 仅仅拥有一个发布就不能满足MessagingFactory的要求,它也不会将消息发送回主队列/主题。
// assume members _messagingFactory, _secondaryNamespaceManager, _secondaryManagementMessagingFactory have been assigned.
try
{
var pairedNamespaceOptions = new SendAvailabilityPairedNamespaceOptions(_secondaryNamespaceManager,
_secondaryManagementMessagingFactory,
1,
TimeSpan.FromSeconds(30),
true);
_messagingFactory.PairNamespaceAsync(pairedNamespaceOptions).Wait();
}
catch (Exception ex)
{
// logging or handle
}
一些有用的链接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.