O que é um servicebus e quando preciso de um?
Ouvi falar sobre o NServiceBus, mas eu realmente não entendi o que é. Eles afirmam ser "o ônibus de serviço de código aberto mais popular para .net".
Então, o que é um "autocarro de serviço", e quando preciso de um?3 answers
Em última análise, você pode ver um ônibus de serviço como fornecendo o próximo nível mais alto de abstração para a construção de sistemas distribuídos. Você pode usá-lo também para a comunicação cliente-servidor para dar-lhe mensagens de uma maneira durável, bem como para o servidor para empurrar notificações de volta para o cliente.
Especificamente, você vai encontrar NServiceBus para ser bastante leve e fácil de usar uma vez que você faz paz com o uso da tecnologia de fila - sua escolha de RabbitMQ, MSMQ, filas de armazenamento Azure, e ônibus de serviço Azure.
Confira o artigo do Wikipedia para Enterprise Service Bus.
Um barramento de Serviços actua como mais uma camada de abstracção na busca interminável para implementar uma boa Arquitectura orientada para os Serviços. O ônibus de serviço pode lidar com alguns dos trabalhos pesados vistos por trás de uma boa arquitetura orientada a serviços, como mensagens, roteamento e coordenação de Serviços.
Se não tens a certeza porque queres algo assim, sugiro que leias o que faz um bom serviço. Arquitetura Orientada. O livro que realmente me abriu os olhos e provou a diferença entre ter apenas Serviços Web e ter uma arquitetura orientada a um verdadeiro serviço foi a arquitetura orientada a serviços de Thomas Erl: conceitos, Tecnologia e DesignEste termo foi introduzido com SOAque é de certa forma o sucessor (como palavra buzz) de EAI.
Quando é que precisas? Boa pergunta. Vem com muita complexidade. Uma regra de ouro pode resolver mais problemas do que causa.Ser sério se você tem um ambiente heterogêneo e quer alinhar (difernt) aplicações (usando tecnologia diferente) com os processos de negócios. Então poderia ser útil usar BPEL (mas isto introduz problemas pela migraton) para a orquestração e coreografia
Editar: o que não está na Wikipédia, é prática: Um ESB pode, por exemplo, adaptar-se usando conectores especiais, aplicações terminais antigas para uso com Corba ou Java Enterprise que se entende por interoperabilidade. A desvantagem são os mais de 100 'padrões' em torno de sabão que não cooperam sem um esforço enorme.
[[1]] você definitivamente precisa dele se você tem que interconectar os sistemas de TI no prazo de seis meses após um fusão de duas grandes companhias de seguros.