Monitorando Transações em Tempo Real usando Java EE

1,393 views

Published on

Apresentação proferida por mim no evento "The Developers Conference 2011" que aconteceu em São Paulo

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,393
On SlideShare
0
From Embeds
0
Number of Embeds
23
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Monitorando Transações em Tempo Real usando Java EE

  1. 1. Monitorando Transações emTempo 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. 2. O que é um Evento?
  3. 3. O que é um Evento?Conjunto de dados que representa o resultado de umaaçã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. 4. O que é um EventoComplexo?
  5. 5. O que é um Evento Complexo? É o resultado da correlação de um, dois ou mais eventos! + +
  6. 6. Correlação de Eventos... WTF?Captura de eventos, filtragem e reconhecimento de padrõesde uma série de eventos para identificar e responder, emtempo 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. 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. 8. Processamento de EventosCEP 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. 9. Como que isso Funciona? Eventos de Entrada Eventos de Saída Visualização Ações Alertas1. Os eventos são capturados a partir de uma fonte qualquer2. Filtros são aplicados para obter apenas os eventos que interessam3. É feita a correlação em cima dos eventos resultantes do filtro4. Regras monitoram os eventos interessantes e dispara ações5. Eventos de saída são gerados para visualização ou automação
  10. 10. Processamento deEventos 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. 11. Visão Geral de umaSolução de CEP Dashboards Data Interativos Warehouse Aplicações Web Análise e Sensores de Rede Desenho Devices de Rede Alertas eEventos de Notificação Entrada Eventos de Saída Aplicações J2EE Captura de Eventos e Replay
  12. 12. Maiores Informações sobre CEP “Esse é o CARA!”http://complexevents.com/books
  13. 13. Onde que o“Bicho Pega” em CEP?
  14. 14. Dashboards Data Interativos Warehouse Aplicações Web Análise e Sensores de Rede Desenho Devices de Rede Alertas eEventos de Notificação Entrada Eventos de Saída Aplicações J2EECOMO OS EVENTOS SÃO CAPTURADOS? Captura de Eventos e Replay
  15. 15. Eventos: Por Onde Começar?
  16. 16. EJB 3.0 Interceptors
  17. 17. EJB 3.0 Interceptors
  18. 18. EJB 3.0 Interceptors
  19. 19. JPA Entity Listeners
  20. 20. JPA Entity Listeners
  21. 21. Java Message Service (JMS) Consumidor Primário Aplicação Consumidor Java EE Topic Secundário Endpoint para CEP
  22. 22. Java Message Service (JMS) Wiretap EAI Pattern
  23. 23. Java Message Service (JMS)
  24. 24. 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.”
  25. 25. Java EE Connector Architecture
  26. 26. “E NÃO SOMENTE DE JAVA VIVE O HOMEM...”
  27. 27. CORBA Portable Interceptors
  28. 28. Microsoft .NET & AOPMarshalByRefObjectContextBoundObject
  29. 29. Enterprise Service Bus
  30. 30. DEMO :-)
  31. 31. IF Starbucks têm uma promoção ativaAND O cliente aceita receber promoçõesFOLLOWED-BY ( O cliente se encontra a 10 minutos da localização de uma StarbucksOR 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

×