【发布时间】:2017-10-08 09:17:19
【问题描述】:
完全披露:我是 Service Fabric 开发的新手。这是我的情况。我们有 Service Fabric 集群。我们在那里部署了有状态服务。服务有指定的服务总线队列,它监听。所以集群中所有节点上的所有服务实例都监听同一个服务总线队列。每个服务实例向服务总线队列注册 OnMessage 回调以处理如下消息:
QueueClient Queue = QueueClient.CreateFromConnectionString(
GetServicebusConnectionString(),
ConfigData.SERVICE_QUEUE_NAME);
if (Queue != null)
{
var options = new OnMessageOptions();
options.AutoComplete = false;
Queue.OnMessage((receivedMessage) =>
ProcessMessage(receivedMessage), options);
}
现在,根据日志中的消息,看起来所有服务实例都拾取了已同时放入队列的消息。这不构成一件好事。 问题是:
当队列中的每条消息只能由一个服务实例提取时,是否可以使用服务总线队列?
【问题讨论】:
标签: c# azure-service-fabric azure-servicebus-queues