SlideShare une entreprise Scribd logo
1  sur  32
Monitorando Transações em
Tempo Real usando Java EE
 Utilizando JCA, JMS e EJB 3.0 Interceptors em Soluções
           de CEP (Complex Event Processing)




  Ricardo S. Ferreira
  @jricardoferreir
O que é um
 Evento?
O que é um Evento?


Conjunto de dados que representa o resultado de uma
ação ou da mudança de estado de um objeto

       Abertura de uma conta corrente
       Atualização de um registro no B.D       CEP
       Leitura de um produto via scanner
       Localização de GPS de uma pessoa
       Informações de um item da rede
       Notificação de falha de um sistema
O que é um
  Evento
Complexo?
O que é um Evento Complexo?


              É o resultado da correlação
              de um, dois ou mais eventos!

                     +         +
Correlação de Eventos... WTF?


Captura de eventos, filtragem e reconhecimento de padrões
de uma série de eventos para identificar e responder, em
tempo real, oportunidades e ameaças

 Aplicação de pedido de compra

    Sensores de rede e RFID

 Feeds de GPS em tempo real

 Inventário de sistemas de rede

                                  Correlação de Eventos
Captura dos   Storage dos      Análise dos
                                                   Ação
  Dados          Dados           Dados




                     Arquiteturas existentes não são projetadas
                      para responder aos eventos em tempo real
 O que já            Análises temporais ou sobre informações
                      geográficas são complicadas ou impossíveis
 aconteceu
                     Tudo isso faz com que a tomada de decisão
                      das organizações seja sempre baseada em
                      informações passadas
Processamento de Eventos


CEP permite que você dê uma resposta apropriada
 aos eventos à medida que eles acontecem


                 O que está
  O que já                   O que vai
                acontecendo
  aconteceu                 acontecer?
                   agora?
Como que isso Funciona?


       Eventos de Entrada                          Eventos de Saída

                                                                 Visualização

                                                                 Ações

                                                                 Alertas



1.   Os eventos são capturados a partir de uma fonte qualquer
2.   Filtros são aplicados para obter apenas os eventos que interessam
3.   É feita a correlação em cima dos eventos resultantes do filtro
4.   Regras monitoram os eventos interessantes e dispara ações
5.   Eventos de saída são gerados para visualização ou automação
Processamento de
Eventos na Prática!

     Informações de Clientes


     Dados Companhia Aérea


     Sistema de Aeroportos



          IF clientes premium estão no Vôo 15 AND O vôo 15
          está atrasado AND existe um conflito de portões e
          mudança do portão THEN reagendar vôo AND
          escoltar os clientes para o próximo vôo disponível
Visão Geral de uma
Solução de CEP                                                                         Dashboards
                                                    Data                               Interativos
                                                  Warehouse
                                     Aplicações
                                       Web

                                                                                                        Análise e
             Sensores de Rede                                                                           Desenho

             Devices de Rede


                                                                                                     Alertas e
Eventos de                                                                                           Notificação
   Entrada
                                                                                                       Eventos de
                                                                                                       Saída




                                Aplicações J2EE




                                                              Captura de Eventos e Replay
Maiores Informações sobre CEP


                                 “Esse é o CARA!”




http://complexevents.com/books
Onde que o
“Bicho Pega”
  em CEP?
Dashboards
                                                    Data                               Interativos
                                                  Warehouse
                                     Aplicações
                                       Web

                                                                                                        Análise e
             Sensores de Rede                                                                           Desenho

             Devices de Rede


                                                                                                     Alertas e
Eventos de                                                                                           Notificação
   Entrada
                                                                                                       Eventos de
                                                                                                       Saída




                                Aplicações J2EE




COMO OS EVENTOS SÃO CAPTURADOS?
                                                              Captura de Eventos e Replay
Eventos: Por Onde Começar?
Monitorando Transações em Tempo Real usando Java EE
EJB 3.0 Interceptors
EJB 3.0 Interceptors
EJB 3.0 Interceptors
JPA Entity Listeners
JPA Entity Listeners
Java Message Service (JMS)


                     Consumidor
                      Primário


 Aplicação           Consumidor
  Java EE    Topic   Secundário


                      Endpoint
                      para CEP
Java Message Service (JMS)




  Wiretap EAI Pattern
Java Message Service (JMS)
Java EE Connector Architecture


                       JCA 1.6 Message InFlow
                  “Provide a standard, generic mechanism
                  to plug in a wide range of message
                  providers, including JMS, into a Java EE
                  compatible application server through a
                  resource adapter and dispatch messages
                  to message endpoints. This will allow Java
                  EE components to act as consumers of
                  messages with no required changes to the
                  client programming models. Further, the
                  Java EE components will be able to access
                  messages with no awareness that some
                  resource adapter is actually delivering the
                  message.”
Java EE Connector Architecture
“E NÃO SOMENTE DE JAVA VIVE O HOMEM...”
CORBA Portable Interceptors
Microsoft .NET & AOP

MarshalByRefObject


ContextBoundObject
Enterprise Service Bus
DEMO :-)
IF
     Starbucks têm uma promoção ativa
AND
  O cliente aceita receber promoções
FOLLOWED-BY (
   O cliente se encontra a 10 minutos
   da localização de uma Starbucks
OR
  O cliente permanece em um
  local estratégico por mais                                      Localização
                                                                   via GPRS
  de 10 minutos
)                                                         Chamada
                                                          Telefônica

                                               Informações
                                              sobre o Cliente
                                           Feeds
                                        Promocionais

Contenu connexe

Similaire à Monitorando Transações em Tempo Real usando Java EE

Arquitetura Microsoft.pptx
Arquitetura Microsoft.pptxArquitetura Microsoft.pptx
Arquitetura Microsoft.pptxmikasantana2
 
DevDay 2017 - Belo Horizonte - Application Insights
DevDay 2017 - Belo Horizonte - Application InsightsDevDay 2017 - Belo Horizonte - Application Insights
DevDay 2017 - Belo Horizonte - Application InsightsAndré Dias
 
Visão Geral sobre o Application Insights
Visão Geral sobre o Application InsightsVisão Geral sobre o Application Insights
Visão Geral sobre o Application InsightsAndré Dias
 
OEP - Oracle Event Processing para Java Embedded
OEP - Oracle Event Processing para Java EmbeddedOEP - Oracle Event Processing para Java Embedded
OEP - Oracle Event Processing para Java EmbeddedMarco Antonio Maciel
 
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...Amazon Web Services LATAM
 
Curso programação web em PHP
Curso programação web em PHPCurso programação web em PHP
Curso programação web em PHPRaphael Cangucu
 
Devops Summit Brasil 2016 - Application Insights
Devops Summit Brasil 2016 - Application InsightsDevops Summit Brasil 2016 - Application Insights
Devops Summit Brasil 2016 - Application InsightsAbner das Dores
 
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart Cities
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart CitiesAWS Initiate - AWS & IoT (Internet das Coisas) - Smart Cities
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart CitiesAmazon Web Services LATAM
 
BigData e internte das coisas aplicada a engenharia
BigData e internte das coisas aplicada a engenhariaBigData e internte das coisas aplicada a engenharia
BigData e internte das coisas aplicada a engenhariaAlessandro Binhara
 
BIG DATA & IoT: Tecnologias e  Aplicações
BIG DATA & IoT: Tecnologias e  AplicaçõesBIG DATA & IoT: Tecnologias e  Aplicações
BIG DATA & IoT: Tecnologias e  AplicaçõesAlessandro Binhara
 
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...tdc-globalcode
 
Processamento de Eventos Complexos com Spark
Processamento de Eventos Complexos com SparkProcessamento de Eventos Complexos com Spark
Processamento de Eventos Complexos com SparkLeandro Mendes Ferreira
 
Monitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comMonitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comDenis Vieira
 
Gestão de Ativos de Ti | Andracom
Gestão de Ativos de Ti | AndracomGestão de Ativos de Ti | Andracom
Gestão de Ativos de Ti | AndracomAndracom Solutions
 
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EEAlta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EEelliando dias
 
Monitoração de Aplicações Distribuídas
Monitoração de Aplicações DistribuídasMonitoração de Aplicações Distribuídas
Monitoração de Aplicações DistribuídasMarkus Christen
 
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...Renato Groff
 

Similaire à Monitorando Transações em Tempo Real usando Java EE (20)

Arquitetura Microsoft.pptx
Arquitetura Microsoft.pptxArquitetura Microsoft.pptx
Arquitetura Microsoft.pptx
 
HOTNOC - WEB Network Operation System Monitoring by IdeaValley
HOTNOC - WEB Network Operation System Monitoring by IdeaValleyHOTNOC - WEB Network Operation System Monitoring by IdeaValley
HOTNOC - WEB Network Operation System Monitoring by IdeaValley
 
DevDay 2017 - Belo Horizonte - Application Insights
DevDay 2017 - Belo Horizonte - Application InsightsDevDay 2017 - Belo Horizonte - Application Insights
DevDay 2017 - Belo Horizonte - Application Insights
 
Visão Geral sobre o Application Insights
Visão Geral sobre o Application InsightsVisão Geral sobre o Application Insights
Visão Geral sobre o Application Insights
 
AIML Reforçando a segurança virtual
AIML Reforçando a segurança virtualAIML Reforçando a segurança virtual
AIML Reforçando a segurança virtual
 
OEP - Oracle Event Processing para Java Embedded
OEP - Oracle Event Processing para Java EmbeddedOEP - Oracle Event Processing para Java Embedded
OEP - Oracle Event Processing para Java Embedded
 
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
Como o Magazine Luiza inova suas operações utilizando as soluções de IoT e Bi...
 
Curso programação web em PHP
Curso programação web em PHPCurso programação web em PHP
Curso programação web em PHP
 
Devops Summit Brasil 2016 - Application Insights
Devops Summit Brasil 2016 - Application InsightsDevops Summit Brasil 2016 - Application Insights
Devops Summit Brasil 2016 - Application Insights
 
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart Cities
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart CitiesAWS Initiate - AWS & IoT (Internet das Coisas) - Smart Cities
AWS Initiate - AWS & IoT (Internet das Coisas) - Smart Cities
 
BigData e internte das coisas aplicada a engenharia
BigData e internte das coisas aplicada a engenhariaBigData e internte das coisas aplicada a engenharia
BigData e internte das coisas aplicada a engenharia
 
BIG DATA & IoT: Tecnologias e  Aplicações
BIG DATA & IoT: Tecnologias e  AplicaçõesBIG DATA & IoT: Tecnologias e  Aplicações
BIG DATA & IoT: Tecnologias e  Aplicações
 
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...
TDC2017 | POA Trilha BigData - Arquitetura Big Data para Gestão de Regras de ...
 
Processamento de Eventos Complexos com Spark
Processamento de Eventos Complexos com SparkProcessamento de Eventos Complexos com Spark
Processamento de Eventos Complexos com Spark
 
Monitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.comMonitoracao Inteligente na Globo.com
Monitoracao Inteligente na Globo.com
 
Projeto do Sistema Cacti – Software Gerenciamento de Rede
Projeto do Sistema Cacti – Software Gerenciamento de RedeProjeto do Sistema Cacti – Software Gerenciamento de Rede
Projeto do Sistema Cacti – Software Gerenciamento de Rede
 
Gestão de Ativos de Ti | Andracom
Gestão de Ativos de Ti | AndracomGestão de Ativos de Ti | Andracom
Gestão de Ativos de Ti | Andracom
 
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EEAlta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE
Alta produtividade nAlta produtividade no desenvolvimento corporativo em J2EE
 
Monitoração de Aplicações Distribuídas
Monitoração de Aplicações DistribuídasMonitoração de Aplicações Distribuídas
Monitoração de Aplicações Distribuídas
 
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...
Application Insights - III Encontro Metropolitano de Tecnologia - Baixada San...
 

Monitorando Transações em Tempo Real usando Java EE

  • 1. Monitorando Transações em Tempo Real usando Java EE Utilizando JCA, JMS e EJB 3.0 Interceptors em Soluções de CEP (Complex Event Processing) Ricardo S. Ferreira @jricardoferreir
  • 2. O que é um Evento?
  • 3. O que é um Evento? Conjunto de dados que representa o resultado de uma ação ou da mudança de estado de um objeto  Abertura de uma conta corrente  Atualização de um registro no B.D CEP  Leitura de um produto via scanner  Localização de GPS de uma pessoa  Informações de um item da rede  Notificação de falha de um sistema
  • 4. O que é um Evento Complexo?
  • 5. O que é um Evento Complexo? É o resultado da correlação de um, dois ou mais eventos! + +
  • 6. Correlação de Eventos... WTF? Captura de eventos, filtragem e reconhecimento de padrões de uma série de eventos para identificar e responder, em tempo real, oportunidades e ameaças Aplicação de pedido de compra Sensores de rede e RFID Feeds de GPS em tempo real Inventário de sistemas de rede Correlação de Eventos
  • 7. Captura dos Storage dos Análise dos Ação Dados Dados Dados  Arquiteturas existentes não são projetadas para responder aos eventos em tempo real O que já  Análises temporais ou sobre informações geográficas são complicadas ou impossíveis aconteceu  Tudo isso faz com que a tomada de decisão das organizações seja sempre baseada em informações passadas
  • 8. Processamento de Eventos CEP permite que você dê uma resposta apropriada aos eventos à medida que eles acontecem O que está O que já O que vai acontecendo aconteceu acontecer? agora?
  • 9. Como que isso Funciona? Eventos de Entrada Eventos de Saída Visualização Ações Alertas 1. Os eventos são capturados a partir de uma fonte qualquer 2. Filtros são aplicados para obter apenas os eventos que interessam 3. É feita a correlação em cima dos eventos resultantes do filtro 4. Regras monitoram os eventos interessantes e dispara ações 5. Eventos de saída são gerados para visualização ou automação
  • 10. Processamento de Eventos na Prática! Informações de Clientes Dados Companhia Aérea Sistema de Aeroportos IF clientes premium estão no Vôo 15 AND O vôo 15 está atrasado AND existe um conflito de portões e mudança do portão THEN reagendar vôo AND escoltar os clientes para o próximo vôo disponível
  • 11. Visão Geral de uma Solução de CEP Dashboards Data Interativos Warehouse Aplicações Web Análise e Sensores de Rede Desenho Devices de Rede Alertas e Eventos de Notificação Entrada Eventos de Saída Aplicações J2EE Captura de Eventos e Replay
  • 12. Maiores Informações sobre CEP “Esse é o CARA!” http://complexevents.com/books
  • 13. Onde que o “Bicho Pega” em CEP?
  • 14. Dashboards Data Interativos Warehouse Aplicações Web Análise e Sensores de Rede Desenho Devices de Rede Alertas e Eventos de Notificação Entrada Eventos de Saída Aplicações J2EE COMO OS EVENTOS SÃO CAPTURADOS? Captura de Eventos e Replay
  • 15. Eventos: Por Onde Começar?
  • 22. Java Message Service (JMS) Consumidor Primário Aplicação Consumidor Java EE Topic Secundário Endpoint para CEP
  • 23. Java Message Service (JMS) Wiretap EAI Pattern
  • 25. Java EE Connector Architecture JCA 1.6 Message InFlow “Provide a standard, generic mechanism to plug in a wide range of message providers, including JMS, into a Java EE compatible application server through a resource adapter and dispatch messages to message endpoints. This will allow Java EE components to act as consumers of messages with no required changes to the client programming models. Further, the Java EE components will be able to access messages with no awareness that some resource adapter is actually delivering the message.”
  • 26. Java EE Connector Architecture
  • 27. “E NÃO SOMENTE DE JAVA VIVE O HOMEM...”
  • 29. Microsoft .NET & AOP MarshalByRefObject ContextBoundObject
  • 32. IF Starbucks têm uma promoção ativa AND O cliente aceita receber promoções FOLLOWED-BY ( O cliente se encontra a 10 minutos da localização de uma Starbucks OR O cliente permanece em um local estratégico por mais Localização via GPRS de 10 minutos ) Chamada Telefônica Informações sobre o Cliente Feeds Promocionais