JBoss Fuse - Introdução ao ESB
Neste capítulo, começaremos com os fundamentos do Enterprise Service Bus. A seguir, é fornecida uma explicação detalhada sobre o ESB, juntamente com suas vantagens, desvantagens e alguns diagramas para facilitar o entendimento.
O que é ESB?
ESB significa Enterprise Service Bus. O ESB em sua forma mais simples é um middleware que atua como uma rodovia de informações, auxiliando a comunicação de vários aplicativos.
No mundo empresarial, desenvolvemos soluções para muitas coisas. Essas soluções podem usar diferentes tecnologias e diferentes formatos de dados. É complicado usar essas soluções juntas devido à variação de compatibilidade de comunicação ou formato de dados nessas tecnologias. Portanto, precisamos de uma tecnologia que permitaloosely coupled integration entre essas diferentes soluções.
O ESB visa simplificar esse problema de integração, tornando-se um 'HUB' que fica no meio de todos os seus aplicativos e facilita o roteamento de mensagens entre eles. O ESB atua como um mediador, atuando como uma autoestrada da informação, cuidando do roteamento da transformação dos dados, deixando o Coder ou o Desenvolvedor focar na própria lógica da aplicação.
Entender o ESB se torna muito simples quando entendemos o problema para o qual ele foi especialmente projetado e a solução se torna fácil. Deve-se ter uma compreensão clara de como habilitar muitos sistemas distintos, escritos em diferentes linguagens e rodando em diferentes máquinas usando diferentes formatos de dados para compartilhar informações e formar uma plataforma de negócios integrada.
O problema de integração
Na plataforma corporativa, é comum que vários aplicativos colaborem e forneçam funcionalidade de negócios como um todo, mas a integração desses aplicativos é o problema mais recorrente. Isso se torna ainda mais difícil com o tempo, conforme os aplicativos aumentam.
Cada aplicativo pode inserir e produzir dados em seu próprio formato. Essa abordagem funciona bem se o número de aplicativos for menor, mas conforme o número de aplicativos aumenta, as rodas de integração também precisam ser alternadas com uma abordagem melhor. Por exemplo, se um determinado aplicativo para um negócio precisa ser alterado, sua saída ou formato de dados de entrada para todos os aplicativos que dependem desse aplicativo Mestre são afetados.
Tal abordagem serve como o maior obstáculo para a integração, que espera uma arquitetura fortemente acoplada. É aqui que o ESB entra em cena. Cada aplicativo não precisa se comunicar diretamente com outro aplicativo; em vez disso, todos os aplicativos se comunicam com o ESB e o ESB lida com o roteamento de informações e a conversão do formato de dados interno.
Por que ESB?
A seguir estão alguns pontos que explicam por que o Enterprise Service Bus é essencial.
O ESB visa simplificar o problema de integração com aplicativos compatíveis com variantes.
Ele atua como um Middleware, que atua como mediador de todos os seus aplicativos e facilita o roteamento de mensagens entre eles.
Em vez de cada aplicativo interagir diretamente com todos os outros aplicativos, cada aplicativo agora tem apenas uma interface para o ESB.
O ESB é responsável por traduzir mensagens de / para um formato comum e encaminhá-las para seus destinos.
A principal economia nessa abordagem é uma bênção se você precisar substituir qualquer um dos aplicativos existentes. Em vez de escrever um monte de novas interfaces, agora você só tem uma interface com a qual se preocupar (entre seu aplicativo e o ESB).
SOA e ESB?
SOA e ESB são comumente usados de forma intercambiável, mas são completamente diferentes.
SOA é um padrão de design que permite que o aplicativo exponha suas funcionalidades como um serviço na rede por meio de protocolos de comunicação, enquanto o ESB é um modelo que facilita a comunicação entre sistemas distintos, mas o ESB pode ser usado como um backbone durante a implementação de SOA.