Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos S01E04 -

46
Arquitetura IMDG (In Memory Data Grid) do Magic xpi 4 Magic Sem Segredos S1E4 24 Janeiro 2014

description

A solução In-Memory Data Grid computing (IMDG) é cada vez mais utilizada por empresas para implantação de um recurso computacional rápido e robusto. Tendo sido anteriormente utilizado apenas por grandes companhias, como instituições financeiras e gigantes da internet, os custos da tecnologia, atualmente, foram reduzidos ao ponto que a solução pode servir de apoio à integração de aplicativos de empresas. As soluções In-Memory Data Grids são a forma ideal para garantir a transmissão de mensagens em projetos de integracão, com menor latência, capacidade para alto volume de transações e facilitadores para ambientes distribuídos. Clustering, Recuperação, Escalabilidade e Gerenciamento são tópicos abordados nessa sessão, para ajudar seu projeto de integração se tornar ainda melhor.

Transcript of Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos S01E04 -

Page 1: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura IMDG (In Memory Data Grid) do

Magic xpi 4

Magic Sem Segredos – S1E4 – 24 Janeiro 2014

Page 2: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Magic Sem Segredos

• Magic Software

• Nova Arquitetura do Magic

xpi

• Magic em Ação

• Perguntas e Respostas

(Comentários do Blog)

Agenda

http://mss.magicsoftware.com.br

Page 3: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Magic Software

• 30+ anos de Experiência

• Destaque em Tecnologia e

Inovação

• Foco em Necessidades de

Negócios

• NASDAQ (MGIC)

• 14 Escritórios mundialmente

• Presente em mais de 50 países

• Parceiros +3.000

Um fornecedor global de plataformas de desenvolvimento e integração

de aplicações

Page 4: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Plataforma de Integração Magic xpi 4

Page 5: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Revisão Inicial da Versão iBOLT 3

– Fase Concluída

Melhoria na

tolerância a falhas,

recuperação de erros,

escalabilidade e

performance

Page 6: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Segunda Revisão – Fase em

Andamento

Inclusão capacidades

BAM e Monitoramento

Visual

Abertura e suporte para

padrões

Novas capacidades e

novos adaptadores

Page 7: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Capacidades Básicas Existentes –

Magic xpi 4.0

Adaptadores prontos de protocolos empresariais com os principais

fornecedores de TI (SAP, Salesforce, Oracle, Microsoft ..) para on-

premise, nuvem e integração de aplicações e dados móveis

Biblioteca de

conectores pré-

construídos

Sem necessidade de códigos e desenvolvimentos complexos – uma

única interface gráfica intuitiva visual (mapeador de dados, ...)

Tecnologia e vendedor agnóstico, classe empresarial (segurança

embutida), SOA compatível, ....

Grande rede de parceiros, serviços profissionais, 30 anos de

experiência

Livre de Código /

GUI Intuitiva

Outras

capacidades

técnicas

Viabilizadores do

Sucesso da

Integração

Page 8: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Novas Capacidades do

Magic xpi 4.0

Capacidades

Prontas para

clustering e

Tolerância a

Falhas

(failover)

Melhoria na

Recuperação

de erros e

Garantia na

Entrega de

Mensagens

Escalabilidade

Elástica e

Processamento

Paralelo

Melhores

facilidades no

sistema de

Gerenciamento

Clustering Recuperação GerenciamentoEscalabilidade

Page 9: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Benefícios do Magic xpi 4.0

Magic xpi 4.0 traz recursos prontos em nível premium de

robustez, normalmente difíceis de implantar e oferecida apenas a grandes

projetos, possibilitando novos cenários de integração para

mobilidade, nuvem e big data

Disponibilidade 24/7 embutida via

clustering, escalabilidade, gerenciamento melhorado

Capacidades de Robustez premium

Automatizado, pré-construídos, as novas capacidades diminuem

ainda mais o custo total de propriedade da Solução Magic

100% Compatível com versões anteriores, sem habilidades

específicas de TI necessários – Sem alteração no

Desenvolvimento

A nova arquitetura do Magic xpi 4.0 facilitada futuros cenários de

integração com baixa latência (mobilidade, nuvem, big data)

Baixo Custo de Propriedade (TCO)

Livre de Risco

À Prova de

Futuro

Page 10: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Magic em

Ação

Coloque suas perguntas

nos comentários do Post no

Blog para respondermos ao

vivo

Page 11: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura baseada em

Space

Page 12: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura tradicional baseada

em camadas

• Foi construída sob o pressuposto de que a

capacidade de rede é um gargalo e

memória é cara e limitada

• Uso intensivo de I/O

• Não distribuído por natureza, pois a rede

foi assumida como sendo um gargalo

• Complicado para Escalar

• Todos os níveis precisam de escalar

juntos

• Cada camada é um middleware com

hardware

dedicado, licenciamento, protocolos, API

s ...

Page 13: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura Baseada em Camadas

– Continuação

Page 14: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Solução Dispatcher (Broker)

• Ponto único de falha

• Status e Controle Centralizados

• Todos os táxis devem se registrar

• Dispatcher precisa ser bem organizado e

ordenado

• Os passageiros podem desaparecer se o

táxi não estiver disponível

Page 15: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura Baseada em Space

• Middleware é virtualizado

• Tanto a lógica de aplicação quanto a camada de

mensagens são executadas em cada partição

juntamente com os dados

• Os dados são armazenados em memória

• Ultra rápido, baixa latência de acesso

• Os dados são particionados entre os processos

• para suportar grandes conjuntos de dados

• Os dados são replicados para fornecer resiliência

• A perda de uma partição não afeta os dados

Page 16: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura Baseada em Space -

Continuação

Page 17: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Solução em Space

• Nova área de espera

• Escalável - novo táxi

pode se juntar

facilmente

• Sem dispatcher, Sem

ponto único de falha

• Pode deixar sua Mala

e ir (assíncrono)

• Área de Espera é

protegida e segura

(sem desaparecimento

de malas)

• Entrega garantida

Page 18: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Conceitos do GigaSpaces XAP

Page 19: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Conceitos Básicos do GigaSpaces

XAP

• In-Memory Data Grid - Software middleware

composto por vários processos de servidores

que trabalham em conjunto para armazenar e

processar grandes quantidades de dados em

memória

• Space – um serviço de lógica em

memória, em execução na grade de dados

(data grid), que pode armazenar entradas de

informação

Page 20: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Topologias Space clustering

• Particionado:

• Replicado:

• Ambos:

Page 21: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura Magic xpi 4.0

Page 22: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura do Magic xpi 4.0 -

Conceitos

• Magic Space

• Um space que contém parte da lógica do Magic

xpi

• Workers

• Threads genéricas num processo de Magic xpi

que executa qualquer fluxo do projeto.

• Constantemente em execução e predefinidos

na inicialização do servidor.

• Metadados do Projeto no Space

• Os metadados do projeto que são gerenciado

no space.

• Unidade de Processamento (PU)

• A lógica que é executada no Magic Space

Page 23: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Nova Arquitetura do Magic xpi 4.0

Magic xpi 4.0 é construído sobre de uma tecnologia In-Memory

Data Grid, que substitui o Magic Broker e fornece tolerância a

falhas, redundância e escalabilidade

23

Magic Engine Magic Engine

ServerServidor

Magic Engine

Servidor Servidor

Magic Engine

Servidor

Motor Magic

Space

(In-Memory Data Grid)

Magic PU

Múltiplos Servidores – Múltiplos Motores – Múltiplos Workers

Gerenciamento

e

Monitoramento

Page 24: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Arquitetura Magic xpi 4.0

Metadados dos Servidores

Mensagens

do WorkEntidades

Compartilhadas

Mensagens do

Gerenciador

Lógica (PU)

Triggers

Externas

Motor Magic xpi 4.0

WorkerWorkerWorker

Gerenciador

Escreve

Lê/obtém

Escreve

Metadados do Projeto

Triggers

Page 25: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Workers

• Threads Genéricas que são executadas

sob um processo do Magic xpi

• Sua quantidade é predefinida na

inicialização do servidor

• Define a quantidade máxima de processos

paralelos que o servidor Magic xpi pode ser

executar

worker

• Pode executar qualquer fluxo do projeto

• Pode executar qualquer ramo paralelo ou stand-alone

• Constantemente buscando novas mensagens no

space

• Atualiza o objeto de metadados correspondente no

space com o status estou-vivo. (I’m-alive)

Page 26: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Gerenciador de Threads

• Uma thread em execução sob o processo do

Magic xpi

• Manipula mensagens de comando:

• Encerramento (Shutdown)

• Workers status

• Monitora a saúde dos workers

• Recupera workers com falha.

Gerenciador

Page 27: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Mensagem de “Work”

• Uma mensagem armazenada no space

• Contém instruções de execução do fluxo

(BP/fluxo)

• Colocado no space por:

• Triggers

• Scheduler

• Auto-Start, Auto-Repeat, PSS

• Ramos Paralelos ou stand-alone

• Seu ciclo de vida passa por vários estados de

"Pronto para uso" para "em andamento" para

"Falha" ou "Concluído”

• Mensagem de Root é removida do space

apenas após um processamento bem

sucedido

Mensagens do

Work

Page 28: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Magic Space PU

• A lógica do Magic xpi que é executada em

cada partição do space

• Responsável pela:

• Inicialização e Encerramento do Projeto

• Recuperação

• Monitoração da Saúde do Projeto

• Transformação de Mensagens (triggers

externos)

Lógica (PU)

Page 29: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Triggers externas

• Triggers que não estão rodando sob um

processo do Magic xpi:

• Web Requester (IIS)

• Provedor de Web Service (WSo2)

• Coloca Mensagens do Work no Space

• Espera por mensagens de respostas

Triggers

Externa

s

Page 30: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Entidades Compartilhadas

• Entidades do Space

• Todas as entidades usadas no vínculo com

um projeto Magic xpi a um único servidor:

• Locking

• Max Instance

• Global and BP variables

• Disable\enable

• Recovery information

Entidades

Compartilhadas

Page 31: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Entidade de Metadados

• Entidades do Space

• Estas entidades são a representação do

space das entidades de processos do Magic

xpi:

• WorkerData, ServerData, FlowData, TriggerDat

a, ProjectData….

• Estas entidades do space são parte do es

• Apenas estas entidades do space controlam

o status do projeto (Motores são sem status)

• Usado pelo Monitor para ganhar visão em

tempo real do projeto.

Metadados

Page 32: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Execução do Projeto

Page 33: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

GSA como agente inicializador do

Magic xpi

• Também é um agente de gestão de processos

• Pode facilmente gerenciar outros processos

• Pode ser totalmente controlado a partir da Admin

API

• Confiável e robusto

• Pode ser exposto como um serviço do SO

Page 34: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Configurações de Inicialização

• Definido em um arquivo XML

• O nome do arquivo é controlado por uma

propriedade no Magic.ini

• O processo de build cria um XML padrão de

início na pasta do projeto

• O Monitor, o Debugger e o “Start link” usam

este XML.

Page 35: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Configurações de Inicialização -

Continuação

<Magicxpi_Startup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<Projects>

<Project Name="recoveryExample" ProjectsDirPath=“\\Magic xpi 4 GS

22_11\projects">

<Servers>

<Server host="AVIW-7-LP">

<NumberOfWorkers>5</NumberOfWorkers>

<NumberOfInstances>1</NumberOfInstances>

<Triggers load="true"/>

<Scheduler load="true"/>

<AutoStart load="true"/>

</Server>

</Servers>

</Project>

<Magicxpi_Startup/>

Page 36: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Ma

Arquitetura do Processo de

Inicialização

Magic PUServerDataServerData

ServerData

Monitor Debugger Start Link

XML

GSAGSA

Magic

xpi Magic

xpi

Page 37: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Processo de Encerramento

(Shutdown)

• Operação de desligamento do projeto cria uma mensagem

de "shutdown project" no space. Como resultado:

• Mudanças de estado do projeto para estado de

desligamento

• Triggers estão bloqueando novas mensagens

• A mensagem de desligamento é distribuída a todos os

servidores que executam (mensagem de gerenciamento)

• A PU monitora o estado dos servidores em execução e

garante que eles desligarão corretamente após um período de

carência

• O tempo de carência permite que os servidores completem

quaisquer mensagens novas ou em processo no space

• Se um servidor não conseguiu desligar, ele vai ser

eliminado pelo GSA

Page 38: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Mecanismo de

Licenciamento

Page 39: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Atualização de Licença

• Magic xpi 4.0 não funciona com licenças da

V3

• Clientes precisam atualizar a licença para a

v4

• A nova licença contém versão MAGIC 2.000

e um flag VERSION=4.0 como parte do

vendor String

Page 40: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Nova Arquitetura de

Licenciamento

• Licença é sempre flutuante, mas com a opção de

reservar licenças a um determinado projeto

• O pool de licenças é feito no space que serve

como servidor de licença

• Workers antes de executar um fluxo, vai tentar

fazer o check-out de uma licença da pool

• No caso de o projeto estar definido para reservar

licenças, alguns de seus workers irão verificar

licenças no pool e nunca vão liberá-los.

• O restantes dos workers vão tentar fazer o check-

out de uma licença e farão o check-in da licença

uma vez que o fluxo tenha terminado (flutuante)

Page 41: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Monitor - Licenças

• A partir do menu de “Ajuda” da visão de

vários projetos, é possível ver a licença

carregada no space.

• A partir do console de monitoramento

avançado, é possível ver o seguinte:

• Uso total de licenças

• Fixed / floating

• License feature usado por cada Servidor

Page 42: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Execução em Cluster

Page 43: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Migração

Page 44: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Plano de Migração

• Ver documentação de migração

• Não há alteração em desenvolvimento, somente na execução

• Migração suave & tranquila – Rebuild do Projeto

Page 45: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Perguntas e Respostas

Page 46: Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos   S01E04 -

Obrigado e até o próximo

http://mss.magicsoftware.com.br