Aqui está meu pequeno projeto - uma implementação de barramento de mensagens .net que funciona com filas MS SQL ou MongoDB (o suporte a MongoDB é uma adição recente). Link:http://code.google.com/p/nginn-messagebus/ e http://nginn.org/blog para alguns exemplos. Não tenho certeza se é isso que você está procurando, também falta documentação e departamentos de exemplo e não corresponde exatamente às suas especificações (pesquisa em vez de cauda) - mas talvez valha a pena tentar . Este é um barramento de mensagens de publicação-assinatura, como NServiceBus ou MassTransit - não uma fila de mensagens brutas.
PS Receio que existam requisitos mutuamente exclusivos em suas especificações:você não pode usar o cursor tailable com consumidores simultâneos porque perde atomicidade. Se você deseja seguir uma fila, deve usar apenas um único consumidor.