Usando o NServiceBus em um aplicativo hospedado no Amazon EC2

Estamos iniciando um novo projeto que tem alguns requisitos de mensagens e enfileiramento bastante básicos, mas no futuro podem haver alguns requisitos adicionais para coisas como sagas para processar mensagens que podem chegar fora de ordem e precisam ser reequilibradas.

Acabamos de lançar um projeto completamente hospedado no Amazon EC2, que também possui um sistema de mensagens simples. Temos um pequeno mecanismo pub / sub muito simplista pelo qual recebemos uma mensagem e depois descobrimos qual manipulador usar para a mensagem com base em seu tipo. Em nosso novo projeto, também temos um mecanismo semelhante e podemos ter alguns requisitos um pouco mais sofisticados, mas mesmo se pudéssemos acabar com nosso próprio código para resolver os manipuladores de mensagens, isso também seria legal.

Estamos muito interessados em usar o NServiceBus, pois o modelo pub / sub é muito bom, mas até agora usamos o Amazon SQS como provedor de filas. Cada uma de nossas máquinas EC2 tem um trabalhador que está ouvindo a mesma fila SQS e recebendo mensagens para processá-las. Obviamente, o SQS não é suportado como uma camada de transporte (e eu sei que é porque o NServiceBus é construído em torno de uma fila confiável e de baixa latência) no NServiceBu

Eu sei que o NServiceBus tem um distribuidor, e eu poderia imaginar hospedá-lo em sua própria instância EC2, mas o problema disso é que há um enorme ponto único de falha por lá, então estamos basicamente ferrados se isso acontecer. Pelo que entendi, as pessoas configuram clusters de failover do Windows para lidar com esse problema nas redes internas, mas não sei se isso é aplicável ao EC

Est foi uma das únicas postagens no blog que eu pude encontrar por alguém que realmente tentou usar o NServiceBus no contexto baseado em nuvem, e ele não parece recomendá-lo. Só estou me perguntando se alguém aqui tentou e se sim, teriam algum conselho a oferecer? Parece uma pena que não possamos usar uma estrutura tão boa só porque estamos hospedados na nuvem.

Parece que há algunsprogress sendo feito com as Filas do Azure, o que é algo que podemos analisar, mas por enquanto gostaríamos de manter a infraestrutura com a Amazon, pois temos muita automação de compilação que podemos reutilizar com base nisso.

questionAnswers(1)

yourAnswerToTheQuestion