Diferença Entre SOA e ESB

Anonim

SOA vs ESB

SOA é um conjunto de conceitos arquitetônicos utilizados para o desenvolvimento e integração de serviços. Um serviço é um pacote divulgado de funcionalidades oferecidas na web. O ESB é um software de infra-estrutura que fornece uma construção de arquitetura de software para fornecer serviços básicos para arquiteturas complexas. O ESB pode ser usado como uma plataforma na qual a SOA é realizada.

O que é SOA?

SOA (Arquitetura orientada a serviços) é um conjunto de conceitos arquitetônicos utilizados para o desenvolvimento e integração de serviços. SOA trata da computação distribuída em que os consumidores consomem um conjunto de serviços interoperáveis. Os consumidores múltiplos podem consumir um único serviço e vice-versa. Portanto, o SOA é freqüentemente usado para integrar várias aplicações que usam plataformas diferentes. Para a SOA operar adequadamente, os serviços devem ser ligeiramente acoplados aos sistemas operacionais e às tecnologias das aplicações subjacentes. Os desenvolvedores de SOA criam serviços usando unidades de funcionalidade e as disponibilizam pela internet. Os serviços da Web podem ser usados ​​para implementar a arquitetura SOA. Nesse caso, os serviços da Web tornam-se as unidades de funcionalidade da SOA acessíveis pela internet. Os serviços da Web podem ser utilizados por qualquer pessoa sem preocupar-se com as plataformas ou as linguagens de programação utilizadas para desenvolvê-las. A SOA é diretamente construída com base no princípio da orientação ao serviço, que fala sobre serviços com interface simples que podem ser acessados ​​de forma independente pelos usuários, sem se preocupar com a implementação da plataforma real do serviço.

O que é ESB?

ESB (Enterprise Service Bus) é um software de infra-estrutura que fornece uma construção de arquitetura de software para fornecer serviços básicos para arquiteturas complexas. Mas há um argumento considerável sobre se chamar ESB um estilo arquitetônico ou um produto de software ou mesmo um grupo de produtos. Ele fornece os serviços através do mecanismo baseado em eventos e baseado em padrões para mensagens (que é realmente o barramento de serviços). No topo deste mecanismo de mensagens, uma camada de abstração é fornecida para permitir que os arquitetos explorem as instalações oferecidas pelo ônibus, sem escrever nenhum código real. O ESB geralmente é implementado através de infra-estruturas de middleware baseadas em padrões.

O uso do termo "ônibus" no ESB deve-se ao fato de que a ESB fornece uma função muito semelhante ao barramento de computador físico, mas em um nível de abstração muito maior. Uma das principais vantagens de ter um ESB é a capacidade de reduzir o número de pontos de contato; assim, tornando a adaptação às mudanças muito mais fácil. O ESB pode ser usado como uma plataforma na qual a SOA é realizada. Os conceitos de transformação / roteamento (relacionados ao fluxo) podem ser trazidos para SOA pela ESB.Além disso, ao comprovar a abstração para os pontos finais (em SOA), a ESB promove o acoplamento solto entre os serviços.

Qual a diferença entre SOA e ESB?

Existem algumas diferenças importantes entre SOA e ESB. O SOA é um modelo arquitetônico para implementar aplicativos baseados em serviços ligeiramente acoplados. O ESB é um software de infra-estrutura que ajuda os desenvolvedores a desenvolver serviços e a se comunicar entre os serviços através de APIs adequadas. O ESB pode ser usado como uma plataforma na qual a SOA é realizada. ESB é apenas o meio através do qual os serviços fluem. A ESB fornece instalações para a composição e implantação de serviços, que, por sua vez, implementam a SOA.