Alunos: Alexandre Silva Fernandes
Danilo Costa
Henrique de Almeida
Robson Silva Almeida
SOA é uma metodologia que visa maximizar a
reutilização de serviços existentes e a integração com
novos serviços para aumentar a eficiência e produtividade
de uma empresa.
Após uma pequena definição de SOA, iremos falar de
ESB, Enterprise Service Bus que é uma infra-estrutura
SOA.
ESB é uma abordagem de integração global para
permitir a diferentes aplicações se comunicar .
Porém, há que se configurar o processo.
Em um ESB os fluxos dos inúmeros processos podem
variar desde simples sequências de passos dentro de
uma mesma organização, a orquestrações sofisticadas
de execução de ações (com sincronismos,
roteamentos, transformações, cômputos
intermediários, agregações, etc.) envolvendo várias
organizações.
O ESB fornece um modelo de integração e
implantação, permitindo o tráfego de mensagens
locais e globais através de componentes de integração,
adaptadores configuráveis, protegidos e gerenciados
por um sistema integrado de segurança.
Suponha a seguinte situação. Uma empresa X possui um
sistema de grande porte desenvolvido em Java (JEE, EJB
e outros). Essa empresa X adquire uma empresa Y que por
sua vez utiliza tecnologia .NET. A empresa possui um
sistema de CRM que necessita, por alguma motivo, obter
informações dos dois sistemas para que possa fazer algum
processo de atendimento ao cliente. Para fazer isso você
teria várias opções, poderia conectar os dois sistemas
diretamente, poderia desenvolver uma classe (ou todo um
pacote de classes) que faça acesso aos dois sistemas.
Com tempo, à medida que surgissem outras necessidades de
conectar esses dois sistemas, você acabaria por ter uma
confusão geral de sistemas acessando outros sistemas. Um caos
de verdade. Para evitar isso, entra o papel de ESB, que neste
caso seria um "negociador", seria uma "interface" para a qual
você iria solicitar a execução de alguns processos, consultas,
etc. Ou seja, um elemento intermediário que seria responsável
por conectar sistemas diferentes. O seu sistema Java nem
tomaria conhecimento de que o outro sistema é feito em .NET
ou em qualquer outra tecnologia, porque ele se comunicaria
apenas com o ESB, o qual por sua vez teria o papel de se
conectar a esses outros sistemas.
ESB seria uma abstração dessa interconexão de sistemas
que usam tecnologias diferentes.
A maneira mais comum de se implementar um ESB hoje é
através de Web Services, mas isso não é regra, existem
outras formas de se realizar a mesma atividade. (ESB <>
Web Services).
IBM WebSphere ESB e DataPower;
Sonic ESB;
TIBCO BusinessWorks e ActiveMatrix Grid;
Cape Clear
OSB Oracle Service Bus
Ferramenta para desenvolvimento baseada no Eclipse,
chamada Oracle Service Bus WorkSpace Studio;
Tratamento de falhas na chamada de serviços (tanto
roteamento como pooling de mensagens);
Otimização de transporte de mensagens
Suporte a WS-ReliableMessaging: permite tanto o reenvio
de mensagens das quais não se sabe se a resposta foi
enviada, como também reenvio de mensagens após falha
do cliente ou do servidor.
Os serviços são divididos em dois tipos: serviços de proxy
e serviços de negócio.
Criação de relatórios a partir da situação das SLAs do
barramento permitindo realizar pesquisas sobre o mesmo.
Permite segurança ao nível de mensagem e de transporte.
Suporta as especificações: WS-Policy, WS-
RealiableMessaging, XACML, WSAddressing, SCA,
XPDL, SAML, PKI.
Oracle User Interaction: permite a criação de soluções
contemplando infraestrutura de serviços, incluindo portais
e aplicações compostas.
Oracle Business Process Management: inclui
automatização, execução e monitoramento do ciclo de
vida de processos de negócio como um todo.
Oracle Data Service Integrator: permite a criação de
serviços de dados que disponibilizam visões unificadas e
em tempo real dos dados em diferentes fontes de dados
espalhadas pela organização
Dada a complexidade enfrentada, o fato das ferramentas
de ESB darem grande suporte às integrações, isso não
significa que a implantação de um ESB em uma empresa e
entre empresas seja uma tarefa simples e rápida. Exige
pessoal extremamente qualificado para executar todas as
fases do processo, pois o processo não é uma tarefa fácil.
http://soasimples.com/blog/?cat=11
http://www.linhadecodigo.com.br/Artigo.aspx?id=434
https://blogs.oracle.com/galdino/entry/o_que_e_um_esb
http://blogs.msdn.com/b/wcamb/archive/2009/02/17/enter
prise-service-bus-esb-barramento-de-servi-os-e-seus-
desafios.aspx
Dúvidas
Top Related