SlideShare uma empresa Scribd logo
JBOSS FUSE SERVICE WORKS 
O Fuse além da integração
Elvis Rocha 
● Consultor na Tecnisys há 3 anos 
● Instrutor pela Red Hat e Especialista JBoss 
● Background em desenvolvimento e arquitetura Java 
● 12 anos de experiência na área de TI, 10 anos com java 
elvis.rocha@tecnisys.com.br 
@elvisnaomorreu
Tecnisys 
● Há 22 anos oferecendo soluções open source 
● Red Hat Advanced Business Partner 
● Maior parceiro Red Hat na América Latina 
● Consultoria especializada em soluções na stack de 
middleware, plataforma e cloud da Red Hat 
www.tecnisys.com.br
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Arquitetura Clássica de Aplicações Web Java 
● Modelo MVC 
● Stack de frameworks 
JavaEE / Spring 
+ JSF / GWT / Spring 
● Arquitetura comprovada e 
muito utilizada
Arquitetura Clássica de Aplicações Web Java 
● Modelo MVC 
● Stack de frameworks 
JavaEE / Spring 
+ JSF / GWT / Spring 
● Arquitetura comprovada e 
muito utilizada 
● A camada de apresentação 
às vezes é separada
Arquitetura de Aplicações Web Java (RIA / Mobile) 
● Modelo MVC 
● Stack de frameworks 
JavaEE / Spring 
JSF / GWT / Spring MVC 
● Frameworks Javascript 
● JSON é o modelo de dados 
preferido do lado client 
● Arquitetura comprovada e muito 
utilizada
WebServices - SOAP vs REST 
● SOAP é conhecido por ser 
mais pesado e complexo 
● Contrato formal entre 
linguagens para definir o 
formato das mensagens 
● Suporta XML e binário 
● Preferido para SOA 
● REST é conhecido por ser 
leve e fácil de implementar 
● Não tem um contrato formal 
para definir o formato das 
mensagens 
● Múltiplos tipos de dados 
(JSON, XML, texto, binário) 
● Preferido em aplicações 
modernas e mobile
XML vs JSON 
● XML é o formato nativo de 
transferência de dados entre 
diferentes aplicações 
● Estrutura formal 
● Validação de conteúdo 
● O formato só muda se todos 
os participantes 
concordarem 
● Suporta os tipos de dados 
texto e binário 
● JSON é o formato “nativo” 
para aplicações modernas e 
aplicações mobile 
● Não tem estrutura formal 
● O conteúdo não pode ser 
validado 
● Muda de formato facilmente 
● Somente texto
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Princípios da Orientação a Serviços – SOA
Você tem ou precisa de SOA? 
● Eu preciso fazer um sistema conversar com outro. 
Eu preciso de SOA? 
● Eu preciso expor uma API pública. 
Eu preciso de SOA? 
● Eu estou usando um ESB e tenho todos os 
serviços publicados nele. 
Significa que eu tenho SOA? 
● Eu tenho vários WebServices na empresa. 
Então eu tenho SOA?
Do que você precisa: 
De uma solução de Integração ou de SOA? 
● Você quer levar uma informação de um sistema A 
para um sistema B? 
● Você tem situações problemáticas de integração e 
precisa de uma solução? 
● Você precisa desenvolver componentes para se 
comunicar com suites já existentes tais como SAP, 
SalesForce, OpenShift, AWS e Gmail?
SOA passa por integração, mas não é somente isso 
● SOA é uma solução de negócio e não de tecnologia 
● Desenvolver a aplicação pensando em expor serviços como um 
contrato (Arquitetura de serviços) 
● Gerenciar dentro de sua empresa o inventário desses serviços 
● Composição dos serviços para entregar o resultado esperado 
● Organizar o ecossistema desses serviços compostos para 
atender a uma regra de negócio (Governança)
Arquitetura orientada a serviços 
● Os serviços: 
1. Devem trabalhar com baixíssimo acoplamento 
2. Devem funcionar de forma autônoma e independente 
3. Devem ser reutilizáveis, mas não por somente um sistema e sim por vários 
4. Devem possuir um bom nível de abstração de forma a minimizar o acesso 
aos detalhes de funcionamento do sistema 
5. Devem ser autossuficientes e suportar composição (serem combinados 
com outros serviços) 
6. Devem ser stateless, somente a composição pode ser stateful
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Integração de dados com processamento em lote (batch) 
● Integração Ad hoc (para 
resolver um problema 
específico no momento) 
● Exige uma verificação prévia 
(cuidadosa) dos dados 
● Não existe uma 
responsabilidade definida 
(mestre - escravo) 
● Difícil de manter e monitorar 
● Delay
Arquitetura de Integração de dados em lote (batch) 
● Orientado ao transporte 
eficiente de uma quantidade 
grande de dados 
● A maioria das soluções 
requer um middleware 
específico (Database-vendor 
solutions) 
● ETL
Arquitetura de Integração de dados em tempo real 
● Integração ponto a ponto 
● Alto acoplamento entre 
aplicações e componentes 
● Difícil de manter 
● Difícil de versionar 
● Spaguetti 
● Ad hoc 
● Não é SOA
Arquitetura orientada a serviços em tempo real
Arquitetura orientada a serviços em tempo real 
● Adição do ESB - JBoss Fuse 
● Adapters (+ conectividade) 
● Protocol Mapping (+ interoperabilidade) 
● Transformation / Filter / Routing / Enrichment / Monitoring 
● Message-oriented 
● Service-oriented
Arquitetura de integração, desenvolvimento e governança 
orientada a serviços em tempo real
Arquitetura de integração, desenvolvimento e governança 
orientada a serviços em tempo real 
● JBoss Fuse Service Works 
● Adapters + Protocol Mapping + Messaging 
● Transformation / Filter / Routing / Enrichment / Monitoring 
● Business Rules 
● BPM + Service Orchestration 
● Governança 
● Service Delivery Lifecycle 
Management 
● Business Transaction 
Monitoring
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Red Hat JBoss Fuse 
● Core ESB + Apache Camel + Apache CXF 
● Container OSGI Apache Karaf 
● Fuse Fabric 
● ActiveMQ
Arquitetura do JBoss Fuse 
● Core ESB + Apache Camel + Apache CXF 
● Container OSGI Apache Karaf 
● Fuse Fabric 
● ActiveMQ
Fuse Core ESB 
● É um framework de integração pois auxilia provendo a 
infraestrutura básica para implementar rotas, 
gateways e outras facilidades para a integração 
● Não implementa uma arquitetura SOA, mas fornece 
as características básicas para que possa ser 
implementado 
● O ESB remove o acoplamento entre o serviço 
chamado e o meio de transporte
Apache Camel 
● Framework de integração (EAI Patterns) 
● Suporta in-memory BUS (Alternativa ao JBI) 
● Suporta mensagens síncronas e assíncronas 
● Tratamento de erros/exceções e suporte a debug 
● Implementa mais de 50 patterns 
● Possui mais de 120 componentes
Apache Karaf + Fuse Fabric 
● Container Karaf OSGI: 
● Plataforma OSGI-based com suporte a gerência de 
configuração, provisionamento e hot deploy 
● Fuse Fabric: 
● Baseado no Apache Zookeper 
● Possui containers que podem ter um ou mais profiles 
● Ensemble: Grupo de containers 
● Micro Containers: java, docker, openshift, kubernetes
Apache Active MQ 
● Message Broker de alta performance e full JMS client 
● Transacional 
● Suporta clientes JMS, C, C++, .Net e Stomp
Tópicos 
● Arquitetura de aplicações Java 
● Arquitetura orientada a serviços 
● Estilos de integração de sistemas 
● Red Hat JBoss Fuse 
● Red Hat JBoss Fuse Service Works
Red Hat JBoss Fuse Service Works 
● Core ESB + Apache Camel + Apache CXF 
● JBoss EAP 6 
● Overlord (DTGov e RTGov) – Runtime Governance 
● Riftsaw (Service Orchestration) 
● Switchyard (SCA) 
● Drools (BRMS) 
● JBPM (BPM Suite) 
● S-RAMP 
● Smooks
Arquitetura do JBoss Fuse Service Works 
● Core ESB + Apache Camel + Apache CXF 
● JBoss EAP 6 
● Overlord (DTGov e RTGov) – Runtime Governance 
● Riftsaw (Service Orchestration) 
● Switchyard (SCA) 
● Drools (BRMS) 
● JBPM (BPM Suite) 
● S-RAMP 
● Smooks
JBoss EAP 6 
● Full Java EE 6 Certified 
● Permite a você criar cenários de integração 
aproveitando a arquitetura modular do JBoss baseada 
em módulos java e não bundles OSGI 
● Permite trabalhar com componentes JavaEE como 
componentes EJB, fazer uso da injeção com CDI e 
utilizar o cluster do JBoss EAP
Overlord 
● Design-Time Governance (DTGov) – Workflow 
● Management Deployment (Push artifacts) 
● Project Lifecycle Management
Overlord 
● Runtime Time Governance (RTGov) 
● Project Lifecycle Management
S-RAMP 
● SOA Repository Artifact Model and Protocol 
● Protocol: S-RAMP 1.0 
● JCR: ModeShape e Infinispan 
● Maven: 
... 
<repository> 
<id>local-sramp-repo</id> 
<name>S-RAMP Releases Repository</name> 
<url>sramp://localhost:8080/s-ramp-server/</url> 
</repository> 
...
Switchyard 
● Implementa SCA 
● Coarse-grained services 
● Você cria bindings para os componentes (Reference) 
● Componentes: 
Bean CDI 
Processo BPM 
Processo BPEL 
Camel Route 
Drools Rule 
KIE (Drools/BPM)
BRMS 
● Business Rule Management System 
● Separa regras de negócio da aplicação 
● Coleta os dados (facts) e combina com as 
informações (rules) e tira as conclusões (inferencing) 
● Benefícios: 
Facilidade de mudança 
Menos erros 
Mais visibilidade das regras 
● CEP
BPM Suite 
● Definição, execução e gerenciamento de Processos 
● BPMN 2.0 
● Forms Designer 
● Business Central 
● Decision Tables 
● OptaPlanner
Cloud?
JBoss Fuse ou JBoss Fuse Service Works?
Dúvidas?
JBoss Fuse Service Works - O Fuse além da integração - PT-BR

Mais conteúdo relacionado

PDF
Jboss eap 6
PPTX
DevOps: desenvolvedores e sysadmins cooperando na prática
PPTX
Bibliotecas de interface rica no jsf 2
PDF
JBoss Fuse Workshop Desenvolvimento - Parte 1
PDF
JavaME - Aula 1
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PDF
Apresentação na PHP Conference Brasil 2012
PPT
Jboss eap 6
DevOps: desenvolvedores e sysadmins cooperando na prática
Bibliotecas de interface rica no jsf 2
JBoss Fuse Workshop Desenvolvimento - Parte 1
JavaME - Aula 1
Automatize seu processo de entrega de software com CI/CD na AWS
Apresentação na PHP Conference Brasil 2012

Mais procurados (20)

PPTX
Como começar com Amazon EKS
PDF
Webinar: Introdução à Distribuição Contínua na AWS
PDF
Introdução ao docker
PDF
ArcServe in the AWS Cloud - part II
PDF
PDF
Webinar: Como obter valor comercial com Big Data
PDF
Falando sobre DevOps no azure
PDF
Sistema S2DG e Tecnologias Web
PDF
Treinamento Android Nooclix
PDF
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
PDF
Macro Arquitetura de Software
PPTX
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
PDF
DevOps - melhores práticas e integração contínua
PDF
Webinar Melhores práticas e lições aprendidas com aplicações sem servidor
PDF
Aumentando a produtividade e Automatizando Processos com Jira
PDF
Segurança e automação na Amazon: Lições das trincheiras
PPTX
Rodando a BlackFriday do seu eCommerce na nuvem
PPTX
3. apresentacao rp tec com 2018 gustavo bernardes
PDF
Webinar: Serviço de Distribuição de Conteúdo da AWS
PDF
Integrando infraestruturas híbridas
Como começar com Amazon EKS
Webinar: Introdução à Distribuição Contínua na AWS
Introdução ao docker
ArcServe in the AWS Cloud - part II
Webinar: Como obter valor comercial com Big Data
Falando sobre DevOps no azure
Sistema S2DG e Tecnologias Web
Treinamento Android Nooclix
DevOps, Chef, Puppet, Ansible e como vender milhões na Black Friday com 100% ...
Macro Arquitetura de Software
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
DevOps - melhores práticas e integração contínua
Webinar Melhores práticas e lições aprendidas com aplicações sem servidor
Aumentando a produtividade e Automatizando Processos com Jira
Segurança e automação na Amazon: Lições das trincheiras
Rodando a BlackFriday do seu eCommerce na nuvem
3. apresentacao rp tec com 2018 gustavo bernardes
Webinar: Serviço de Distribuição de Conteúdo da AWS
Integrando infraestruturas híbridas
Anúncio

Destaque (20)

ODP
Introdução ao JBoss Fuse 6.x: criação e implantação de um serviço CXF
PPTX
Integração de Sistemas e JMS Assíncrono
ODP
Java Messaging Service
PDF
Novas APIs do Java EE 7: JMS e Web Services
PDF
PPT
Tdc2012 java e amqp - uma alternativa ao jms
PDF
4 Forum SOA - Edgar Silva (Red Hat)
PDF
Maratona JBoss 2010 - JBoss-ESB
KEY
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
PDF
OpenShift : TaSafoConf 2012
PDF
SOA Workshop - JBoss ESB v1.1
PDF
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
PDF
A PRINCIPAL PLATAFORMA ABERTA, FAÇA MAIS COM MENOS
PDF
TDC 2011 - HornetQ e SwitchYard
PPTX
Hornet - 1.Conceitos de Mensageria
PDF
Integrações e o ecossistema Java - Fabric8 ao Resgate!
PPTX
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
PDF
Aeolus - Solução para Cloud Red Hat
PDF
WSO2 API Manager 2.0 - Overview
PPT
Enterprise service bus(esb)
Introdução ao JBoss Fuse 6.x: criação e implantação de um serviço CXF
Integração de Sistemas e JMS Assíncrono
Java Messaging Service
Novas APIs do Java EE 7: JMS e Web Services
Tdc2012 java e amqp - uma alternativa ao jms
4 Forum SOA - Edgar Silva (Red Hat)
Maratona JBoss 2010 - JBoss-ESB
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift : TaSafoConf 2012
SOA Workshop - JBoss ESB v1.1
KVM, Aeolus, DeltaCloud, Openshift e JBoss - Edgar Silva
A PRINCIPAL PLATAFORMA ABERTA, FAÇA MAIS COM MENOS
TDC 2011 - HornetQ e SwitchYard
Hornet - 1.Conceitos de Mensageria
Integrações e o ecossistema Java - Fabric8 ao Resgate!
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Aeolus - Solução para Cloud Red Hat
WSO2 API Manager 2.0 - Overview
Enterprise service bus(esb)
Anúncio

Semelhante a JBoss Fuse Service Works - O Fuse além da integração - PT-BR (20)

ODP
O Elefante e a Mula
PPTX
Soa conceitos
PPT
Introdução à Programação “para Web” de Carlos Bazilio
PPTX
Desenvolvimento web - conceitos, tecnologia e tendências.
PDF
Plataforma Android: Produtividade Além do SDK
PPTX
Curso jsf
PDF
Escalando apps com React e Type Script e SOLID
PDF
TDC2016SP - Trilha Frameworks JavaScript
PPTX
Integração de sistemas da informação - Abordagens de integração
PPT
Introdução à Programação “para Web” - Carlos Bazilio
PDF
[Ass] arquiteturas soa, woa, e rest
PDF
04 - Felipe Oliveira - Think Decoupled! (SOA)
PDF
Modernização de Sistemas de Gestão
PPT
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
PPTX
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
PPT
XPT Framework
PPTX
Treinamento ASP.NET 2014
PPTX
Ruby on Rails for beginners 2.0
PDF
[Ass] arquiteturas soa, woa, e rest
PDF
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...
O Elefante e a Mula
Soa conceitos
Introdução à Programação “para Web” de Carlos Bazilio
Desenvolvimento web - conceitos, tecnologia e tendências.
Plataforma Android: Produtividade Além do SDK
Curso jsf
Escalando apps com React e Type Script e SOLID
TDC2016SP - Trilha Frameworks JavaScript
Integração de sistemas da informação - Abordagens de integração
Introdução à Programação “para Web” - Carlos Bazilio
[Ass] arquiteturas soa, woa, e rest
04 - Felipe Oliveira - Think Decoupled! (SOA)
Modernização de Sistemas de Gestão
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
XPT Framework
Treinamento ASP.NET 2014
Ruby on Rails for beginners 2.0
[Ass] arquiteturas soa, woa, e rest
TDC2016SP - Revitalizando aplicações desktop usando CefGlue, MessageBus e Rea...

Último (11)

PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Design - Introdução a Gestalt e teoria das formas
PPTX
Eng. Software - pontos essenciais para o início
PPTX
Tipos de servidor em redes de computador.pptx
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PDF
Manejo integrado de pragas na cultura do algodão
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Utilizando code blockes por andre backes
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Arquitetura de computadores - Memórias Secundárias
Viasol Energia Solar -Soluções para geração e economia de energia
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Design - Introdução a Gestalt e teoria das formas
Eng. Software - pontos essenciais para o início
Tipos de servidor em redes de computador.pptx
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Manejo integrado de pragas na cultura do algodão
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Utilizando code blockes por andre backes

JBoss Fuse Service Works - O Fuse além da integração - PT-BR

  • 1. JBOSS FUSE SERVICE WORKS O Fuse além da integração
  • 2. Elvis Rocha ● Consultor na Tecnisys há 3 anos ● Instrutor pela Red Hat e Especialista JBoss ● Background em desenvolvimento e arquitetura Java ● 12 anos de experiência na área de TI, 10 anos com java elvis.rocha@tecnisys.com.br @elvisnaomorreu
  • 3. Tecnisys ● Há 22 anos oferecendo soluções open source ● Red Hat Advanced Business Partner ● Maior parceiro Red Hat na América Latina ● Consultoria especializada em soluções na stack de middleware, plataforma e cloud da Red Hat www.tecnisys.com.br
  • 4. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 5. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 6. Arquitetura Clássica de Aplicações Web Java ● Modelo MVC ● Stack de frameworks JavaEE / Spring + JSF / GWT / Spring ● Arquitetura comprovada e muito utilizada
  • 7. Arquitetura Clássica de Aplicações Web Java ● Modelo MVC ● Stack de frameworks JavaEE / Spring + JSF / GWT / Spring ● Arquitetura comprovada e muito utilizada ● A camada de apresentação às vezes é separada
  • 8. Arquitetura de Aplicações Web Java (RIA / Mobile) ● Modelo MVC ● Stack de frameworks JavaEE / Spring JSF / GWT / Spring MVC ● Frameworks Javascript ● JSON é o modelo de dados preferido do lado client ● Arquitetura comprovada e muito utilizada
  • 9. WebServices - SOAP vs REST ● SOAP é conhecido por ser mais pesado e complexo ● Contrato formal entre linguagens para definir o formato das mensagens ● Suporta XML e binário ● Preferido para SOA ● REST é conhecido por ser leve e fácil de implementar ● Não tem um contrato formal para definir o formato das mensagens ● Múltiplos tipos de dados (JSON, XML, texto, binário) ● Preferido em aplicações modernas e mobile
  • 10. XML vs JSON ● XML é o formato nativo de transferência de dados entre diferentes aplicações ● Estrutura formal ● Validação de conteúdo ● O formato só muda se todos os participantes concordarem ● Suporta os tipos de dados texto e binário ● JSON é o formato “nativo” para aplicações modernas e aplicações mobile ● Não tem estrutura formal ● O conteúdo não pode ser validado ● Muda de formato facilmente ● Somente texto
  • 11. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 12. Princípios da Orientação a Serviços – SOA
  • 13. Você tem ou precisa de SOA? ● Eu preciso fazer um sistema conversar com outro. Eu preciso de SOA? ● Eu preciso expor uma API pública. Eu preciso de SOA? ● Eu estou usando um ESB e tenho todos os serviços publicados nele. Significa que eu tenho SOA? ● Eu tenho vários WebServices na empresa. Então eu tenho SOA?
  • 14. Do que você precisa: De uma solução de Integração ou de SOA? ● Você quer levar uma informação de um sistema A para um sistema B? ● Você tem situações problemáticas de integração e precisa de uma solução? ● Você precisa desenvolver componentes para se comunicar com suites já existentes tais como SAP, SalesForce, OpenShift, AWS e Gmail?
  • 15. SOA passa por integração, mas não é somente isso ● SOA é uma solução de negócio e não de tecnologia ● Desenvolver a aplicação pensando em expor serviços como um contrato (Arquitetura de serviços) ● Gerenciar dentro de sua empresa o inventário desses serviços ● Composição dos serviços para entregar o resultado esperado ● Organizar o ecossistema desses serviços compostos para atender a uma regra de negócio (Governança)
  • 16. Arquitetura orientada a serviços ● Os serviços: 1. Devem trabalhar com baixíssimo acoplamento 2. Devem funcionar de forma autônoma e independente 3. Devem ser reutilizáveis, mas não por somente um sistema e sim por vários 4. Devem possuir um bom nível de abstração de forma a minimizar o acesso aos detalhes de funcionamento do sistema 5. Devem ser autossuficientes e suportar composição (serem combinados com outros serviços) 6. Devem ser stateless, somente a composição pode ser stateful
  • 17. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 18. Integração de dados com processamento em lote (batch) ● Integração Ad hoc (para resolver um problema específico no momento) ● Exige uma verificação prévia (cuidadosa) dos dados ● Não existe uma responsabilidade definida (mestre - escravo) ● Difícil de manter e monitorar ● Delay
  • 19. Arquitetura de Integração de dados em lote (batch) ● Orientado ao transporte eficiente de uma quantidade grande de dados ● A maioria das soluções requer um middleware específico (Database-vendor solutions) ● ETL
  • 20. Arquitetura de Integração de dados em tempo real ● Integração ponto a ponto ● Alto acoplamento entre aplicações e componentes ● Difícil de manter ● Difícil de versionar ● Spaguetti ● Ad hoc ● Não é SOA
  • 21. Arquitetura orientada a serviços em tempo real
  • 22. Arquitetura orientada a serviços em tempo real ● Adição do ESB - JBoss Fuse ● Adapters (+ conectividade) ● Protocol Mapping (+ interoperabilidade) ● Transformation / Filter / Routing / Enrichment / Monitoring ● Message-oriented ● Service-oriented
  • 23. Arquitetura de integração, desenvolvimento e governança orientada a serviços em tempo real
  • 24. Arquitetura de integração, desenvolvimento e governança orientada a serviços em tempo real ● JBoss Fuse Service Works ● Adapters + Protocol Mapping + Messaging ● Transformation / Filter / Routing / Enrichment / Monitoring ● Business Rules ● BPM + Service Orchestration ● Governança ● Service Delivery Lifecycle Management ● Business Transaction Monitoring
  • 25. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 26. Red Hat JBoss Fuse ● Core ESB + Apache Camel + Apache CXF ● Container OSGI Apache Karaf ● Fuse Fabric ● ActiveMQ
  • 27. Arquitetura do JBoss Fuse ● Core ESB + Apache Camel + Apache CXF ● Container OSGI Apache Karaf ● Fuse Fabric ● ActiveMQ
  • 28. Fuse Core ESB ● É um framework de integração pois auxilia provendo a infraestrutura básica para implementar rotas, gateways e outras facilidades para a integração ● Não implementa uma arquitetura SOA, mas fornece as características básicas para que possa ser implementado ● O ESB remove o acoplamento entre o serviço chamado e o meio de transporte
  • 29. Apache Camel ● Framework de integração (EAI Patterns) ● Suporta in-memory BUS (Alternativa ao JBI) ● Suporta mensagens síncronas e assíncronas ● Tratamento de erros/exceções e suporte a debug ● Implementa mais de 50 patterns ● Possui mais de 120 componentes
  • 30. Apache Karaf + Fuse Fabric ● Container Karaf OSGI: ● Plataforma OSGI-based com suporte a gerência de configuração, provisionamento e hot deploy ● Fuse Fabric: ● Baseado no Apache Zookeper ● Possui containers que podem ter um ou mais profiles ● Ensemble: Grupo de containers ● Micro Containers: java, docker, openshift, kubernetes
  • 31. Apache Active MQ ● Message Broker de alta performance e full JMS client ● Transacional ● Suporta clientes JMS, C, C++, .Net e Stomp
  • 32. Tópicos ● Arquitetura de aplicações Java ● Arquitetura orientada a serviços ● Estilos de integração de sistemas ● Red Hat JBoss Fuse ● Red Hat JBoss Fuse Service Works
  • 33. Red Hat JBoss Fuse Service Works ● Core ESB + Apache Camel + Apache CXF ● JBoss EAP 6 ● Overlord (DTGov e RTGov) – Runtime Governance ● Riftsaw (Service Orchestration) ● Switchyard (SCA) ● Drools (BRMS) ● JBPM (BPM Suite) ● S-RAMP ● Smooks
  • 34. Arquitetura do JBoss Fuse Service Works ● Core ESB + Apache Camel + Apache CXF ● JBoss EAP 6 ● Overlord (DTGov e RTGov) – Runtime Governance ● Riftsaw (Service Orchestration) ● Switchyard (SCA) ● Drools (BRMS) ● JBPM (BPM Suite) ● S-RAMP ● Smooks
  • 35. JBoss EAP 6 ● Full Java EE 6 Certified ● Permite a você criar cenários de integração aproveitando a arquitetura modular do JBoss baseada em módulos java e não bundles OSGI ● Permite trabalhar com componentes JavaEE como componentes EJB, fazer uso da injeção com CDI e utilizar o cluster do JBoss EAP
  • 36. Overlord ● Design-Time Governance (DTGov) – Workflow ● Management Deployment (Push artifacts) ● Project Lifecycle Management
  • 37. Overlord ● Runtime Time Governance (RTGov) ● Project Lifecycle Management
  • 38. S-RAMP ● SOA Repository Artifact Model and Protocol ● Protocol: S-RAMP 1.0 ● JCR: ModeShape e Infinispan ● Maven: ... <repository> <id>local-sramp-repo</id> <name>S-RAMP Releases Repository</name> <url>sramp://localhost:8080/s-ramp-server/</url> </repository> ...
  • 39. Switchyard ● Implementa SCA ● Coarse-grained services ● Você cria bindings para os componentes (Reference) ● Componentes: Bean CDI Processo BPM Processo BPEL Camel Route Drools Rule KIE (Drools/BPM)
  • 40. BRMS ● Business Rule Management System ● Separa regras de negócio da aplicação ● Coleta os dados (facts) e combina com as informações (rules) e tira as conclusões (inferencing) ● Benefícios: Facilidade de mudança Menos erros Mais visibilidade das regras ● CEP
  • 41. BPM Suite ● Definição, execução e gerenciamento de Processos ● BPMN 2.0 ● Forms Designer ● Business Central ● Decision Tables ● OptaPlanner
  • 43. JBoss Fuse ou JBoss Fuse Service Works?