O documento discute processamento de eventos complexos em tempo real usando tecnologias Java EE como JCA, JMS e interceptadores EJB. Eventos simples são correlacionados para identificar padrões que disparam ações. Isso permite que sistemas respondam a oportunidades e ameaças em tempo real baseadas no que está acontecendo agora.
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
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
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
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
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.”
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