UNIVERSIDADE FEDERAL DE PERNAMBUCO cin.ufpe.br MultiMachine Middleware M M M M M M M M M M M...

Post on 07-Apr-2016

226 views 3 download

Transcript of UNIVERSIDADE FEDERAL DE PERNAMBUCO cin.ufpe.br MultiMachine Middleware M M M M M M M M M M M...

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

MultiMachine Middleware MMMMMMMMMMM

Tarcisio Coutinhotcs5@cin.ufpe.br

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ObjetivoFacilitar o desenvolvimento de sistemas de Computação Voluntária através da implementação de um middleware

Construir um middleware orientado a objetosFacilidade na “incorporação” de novos serviços

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

Cenário

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

Requisitos Requisitos Funcionais

[RF01] Serviço de nomes.[RF02] Serviço de criptografia.[RF03] Serviço de distribuição de carga

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

Requisitos Requisitos Não Funcionais

[RNF01] Comunicação segura.[RNF02] Linguagem adotada na construção da aplicação: Java[RNF03] Transporte confiável TCP[RNF04] Comunicação Síncrona[RNF05] Comunicação 1-N

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

Arquitetura

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoPadrões de Projeto Adotados

Transparência de acessoClient Proxy

Acesso a objetos remotosRequestor

Invocação de objeto remotoInvoker

SerializaçãoMarshaller

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoPadrões de Projeto Adotados

Gestor de conexões (Client Side)Client Request Handler

Gestor de conexões (Server Side)Server Request Handler

Gerenciamento de Ciclo de VidaPer-Request Instance

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoClient Side @deprecated

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoClient Side

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoServer Side @deprecated

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ProjetoServer Side

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

Projeto

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ImplementaçãoNecessidade de Performance

Implementação não genérica de mensagensSerialização “na unha” de array 159ms para serializar enviar (localmente) e “deserializar” 1Mbyte de dados

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ImplementaçãoComo escolher os host’s

Implementação de uma expressão para calcular o “Machine Rank”

Escolha da carga de dados a serem enviados Cálculo leva em conta vários fatores importantes ao desempenho de processamento (cada qual com um peso associado)

Quantidade de processadores (multi-cores, single-cores)Quantidade total de memória RAMQuantidade de memória LivreNúmero de Processos “Rodando” na máquina

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

AvaliaçãoOrdenação

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ConclusãoPontos Fortes

Adiciona novas propriedades ao middleware orientado a objetos

Distribuição de carga

Implementação seguindo padrões de projetoRegularidadeSimplicidade de entendimento do código

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

ConclusãoPontos Fracos

Dificuldade de distribuir a cargaProblema característico do próprio paralelismo

Conflitos de dados, etc

Atualmente necessidade de carregar configuração manualmente

Futuramente uso de arquivo XMLMotivo: Tempo

UNIVERSIDADE FEDERALDE PERNAMBUCO

cin.ufpe.br

MultiMachine Middleware

MMMMMMMMMMMMMMMMMMDúvidas