P ROGRAMAÇÃO D ISTRIBUÍDA Primeira Fase da Aplicação Distribuída: Gestão de Salas João Gomes Nº 21150324 Marco AndradeNº 21190335 1.

Slides:



Advertisements
Apresentações semelhantes
Programação em Java Prof. Maurício Braga
Advertisements

Orientação – acesso ambiente virtual
Personalização Objecto Profile. 1 O objecto Profile O objecto Profile permite armazenar informação única de um utilizador. Quando o utilizador visita.
Bruno Rafael de Oliveira Rodrigues
Geodatabases no ArcGIS 9.x
Escola Secundária da Ramada
Orientação a Objetos: Encapsulamento e Classificação
Série de Exercícios.
Comunicação Distribuída
Administrando usuários 1 Controle de contas de usuários 1.
Interação Cliente Servidor
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Grupo 9 Leone Mendonça de Sena Patrícia Lima de Souza e Silva
Programa Chat Programação com RMI
Internet e Informação Electrónica INTERNET EXPLORER
1 ua. deca. ntc. projecto. 3 de junho 2009 ana parada. raquel gonçalves. catarina garcia. maria henriques 1.Áreas desenvolvidas na versão beta 1.1. Áreas.
Mobilidade na Internet
Projeto Gestão da Mudança Frente: Comercial Curso: Portal SAP Distribuidores Instrutora interna: Juliana Belló.
Prontuário Eletrônico do Paciente
Sistema Operativo em Ambiente Gráfico
Biblioteca do Conhecimento Online – b-on FONTES DE INFORMAÇÃO SOCIOLÓGICA.
Como usar o novo site.
Utilitários de Redes Prof. Andréa Chicri Torga Adaptações
EBSCOhost Acesso móvel.
Ofício - Resposta Negativa
Microsoft Access Carlos Sebastião.
Sistemas e Tecnologias de Middleware TP3. Foco Sistema de comunicação – Sistema de Message Queuing – Abstracção do substracto de comunicação Adaptação.
Apresentação executiva.
PASSO 1: LOGIN. PASSO 2: CLIQUE EM FATURAMENTO PASSO 3: CLIQUE EM IMPORTAR.
André Freitas, Luís Silva, Ricardo Oliveira Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática 3ºAno Disciplina.
P ROGRAMAÇÃO D ISTRIBUÍDA Primeira Fase da Aplicação Distribuída: Gestão de Salas João Gomes Nº Marco AndradeNº
Ofício - Resposta Positiva Passo 1: Acesse ao site Passo 2: Clique em "Autenticação com certificado digital" 1.
Autenticação em Aplicações Web Notas para a disciplina de Segurança Informática Pedro Félix Instituto.
Programação Orientada à Objetos
DHCP Trabalho Realizado por: Rui Runa Monteiro, nº14.
1 TUTORIAL DO CATÁLOGO DA EGP-UPBS. 2 O catálogo da EGP-UPBS encontra-se em e está integrado no catálogo da Universidade do Porto.
ACCESS Introdução às Tecnologias de Informação II
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
Resposta SPH - Busca de nomes Penhora Passo 1: Acesse ao site “ Passo 2: Clique em "Autenticação com certificado digital" 1.
ACESSO A BASE DE DADOS.
FTP (File Transfer Protocol) Protocolo de Transferencia de Arquivos
Módulo: Gerenciamento de Incidentes e
1- Acessar o site: 2- Realizar o cadastro.
Conheça as novas ferramentas da área de Gestão de Conhecimento!
Del Grande Informática
Gestão de comunicações Fácil de instalar, fácil de usar Fiabilidade, desempenho e versatilidade Automatismos Recurso a tecnologia avançada.
Java Avançado Luiz Carlos d´Oleron SJCP Java Sockets.
Concorrência e Java RMI
Redes de Comunicação – Módulo 3
7 - Criação de Páginas Web
HIDROLIGHT PORTAL DE PEDIDOS.
Clínica Online e TISS
JSP e Servlets ISEP – LP2 Filipe Costa – /2004.
Guia Rápido de Referência
GESTÃO DE FICHEIROS ÍNDICE Pág. I.Instalação do Software 2 II.Selecção de Empresas / Manutenção de Empresas 5 III.Criação da Base de Dados (Clientes,
1 Site do Turismo de Portugal, IP Site do Turismo de Portugal, IP
O Teltax hotel é a versão orientada para gestão e controlo telefónico de unidades hoteleiras.
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Gestão SNMP. Planeamento Montagem e Manutenção de Redes e Equipamentos Informáticos 2 SNMP- Simple Network Management Protocol Nos primeiros dias da Arpanet,
SIAP – Sistema de Apoio ao Professor – Diário Eletrônico
REDE SOCIAL BASE DE DADOS dos CLAS
Gestão de comunicações Fácil de instalar, fácil de usar Fiabilidade, desempenho e versatilidade Automatismos Recurso a tecnologia avançada para unidades.
Cenário / Maquete Web Site CPAuto Trabalho elaborado por: Cecília Melo (ci08004) António Castro (ci08045) Pedro Seabra (ci08001)
PROJETO PILOTO Outubro/Novembro 2015
© Todos os direitos reservados para Icatu Seguros S/A Nenhuma parte desta publicação pode ser reproduzida, arquivada ou transmitida de nenhuma.
Redes de Computadores e Aplicações – Camada de aplicação IGOR ALVES.
Guia de Referência para Fornecedores Visão Fornecedor.
Curso Superior em Redes de Computadores FTP Prof. Sales Filho.
Maio 2014 Descritivo da Solução. Projecto CSRTarget O CSRTarget é uma ferramenta inovadora, rápida, e adequada às necessidades das Empresas/Organizações.
Transcrição da apresentação:

P ROGRAMAÇÃO D ISTRIBUÍDA Primeira Fase da Aplicação Distribuída: Gestão de Salas João Gomes Nº Marco AndradeNº

E STRUTURA DE COMUNICAÇÃO Int code, inteiro que transporta o código referente a operação que se pretende efectuar. T Message, campo genérico que encapsula os dados necessários para processar a operação descrita pelo campo code. 2

C ÓDIGOS DE COMUNICAÇÃO Códigos 0->50, cliente para servidor 1 -> Login 2 -> Pedir listagem de salas 3 -> Pedir Listagem de reservas de salas do utilizador actual 4 -> Pedir para registar reserva 5 -> Logout 6 -> Pedir para cancelar reserva 7 -> Pedir listagem de todas as reservas 3

C ÓDIGOS DE COMUNICAÇÃO C ONT. Códigos 50->100 servidor para o cliente sucesso 99 -> Login efectuado com sucesso 98 -> Preparar para receber listagem de salas 97 -> Preparar para receber listagem de reservas de salas do utilizador actual 96 -> Sala reservada com sucesso 95 -> Listagem de todas as reservas 4

C ÓDIGOS DE COMUNICAÇÃO C ONT. Códigos 50->100 servidor para o cliente, falha 50 -> Login inválido 51 -> Utilizador sem salas reservadas 52 -> Sala já reservada 53 -> Falhou pedido para cancelar reserva 5

C ÓDIGOS DE COMUNICAÇÃO C ONT. Códigos enviados quando há alterações 70 ->Alterações nas reservas 71 -> Alterações nas salas 6

L IGAÇÃO Cliente Estabelece Ligação via TCP Servidor aceita ligação e lança thread Cliente envia pedido de autenticação Code 1, message: User User: Username, password Code: 50/51 Login ok=50 Login fail=51 Login ok, cliente lança thread ligação Login Fail, mostra mensagem ao utilizador Cliente Servidor 7

L IGAÇÃO Após verificação das credenciais do utilizador, o programa cliente lança uma Thread que vai receber todas respostas do Servidor. O cliente Gráfico é responsável por enviar todos os pedidos para obter a informação que necessita. 8

Cliente Gráfico Thread Ligação Invoca método Actualiza, passando o código que recebeu do servidor Servidor Thread Multicast Thread ClientConn ection ThreadCl ient Pedidos Respostas Pedido IP/Porto via Multicast Resposta via UDP

S ERVIDOR O servidor está implementado da seguinte forma: 10 Servidor Thread Principal Thread Multicast Thread ClientConnection Thread TheadClient 1 … Thread TheadClient N

T HREADS NO S ERVIDOR Thread Principal: Esta thread é responsável por lançar duas threads: a thread ClientConnection e threadMulticast, esta é ainda responsável pela gestão da consola onde é possível efectuar operações de gestão de salas, utilizadores e reservas. Thread Multicast: Esta thread é responsável por ficar à escuta de pedidos multicast de modo a dar suporte a resolução do IP do servidor via multicast, no IP porto Esta thread responde apenas a mensagens com o conteúdo “IP” 11

T HREADS NO S ERVIDOR CONT. Thread ClientConnection : Esta thread é responsável por aceitar os pedidos de ligação de clientes e pedir a classe Data para registar o socket do cliente e o ID da thread que o vai atender. Thread ThreadClient : Esta thread é responsável por atender todos os pedidos de clientes bem como responder a esses pedidos. Esta thread serve apenas para descodificar as mensagens vindas do cliente e fazer os respectivos pedidos à classe Data que é quem trata de toda a informação. Após obter a informação de Data codifica a informação obtida e envia ao cliente. 12

C LIENTE O cliente está implementado da seguinte forma: 13 Cliente Janela Login Cliente Gráfico Thread Cliente

J ANELA DE L OGIN Quando o programa é iniciado é lançada uma janela modal que permite ao utilizador procurar por um servidor através de multicast fazer e fazer Login. Após um Login com sucesso esta janela é fechada e é lançada uma Thread (ligação) que vai receber todas as mensagens enviadas do cliente para o servidor. É ainda disponibilizado ao utilizador uma janela gráfica para efectuar as operações que desejar. 14

C OMUNICAÇÃO T HREAD L IGACAO - > CLIENTE GRÁFICO Quando a Thread ligação recebe uma mensagem vindo do cliente invoca o método Actualiza(int code) que actualiza os dados conforme o código que recebeu por parâmetro. 15

A RMAZENAMENTO DE DADOS Os dados são armazenados de forma serializada, em três.txt, estes ficheiros são: Reserves.txt, armazena os dados referentes às reservas; Rooms.txt, armazena os dados das salas disponíveis no sistema; Users.txt, armazena os dados dos utilizadores que podem aceder ao sistema. 16

M ANUAL DO UTILIZADOR Servidor Cliente

I NICIAR APLICAÇÃO Para inicial servidor ou um cliente basta executar o batch files RunServer.bat e RunClient.bat respectivamente que se encontram na pasta do projecto.

S ERVIDOR A aplicação servidora trabalha em modo consola e assim teremos que ter uma noção acerca dos comandos das seguintes acções: Adicionar utilizadores e salas Listar utilizadores, salas e reservas Remover utilizadores, salas e reservas Em caso de alguma dúvida persistir basta inserir um comando inválido e será aprensentado um help.

A DICIONAR Utilizadores Salas

L ISTAR Utilizadores Salas Reservas

R EMOVER Utilizadores Salas Reservas

C LIENTE A aplicação cliente trabalha em modo gráfico e assim teremos que ter uma noção acerca de alguns passos de modo a conseguir executar as acções mais importantes.

C ONECÇÃO AO SERVIDOR Como podemos observar na figura verificamos que existem 3 campos a preencher, assim: a – ip do servidor; b – porto do servidor; c – ip multicast onde automáticamente poderemos preencher os campos a e b. a b c

L OGIN Após uma conecção válida poderemos efectuar o login. d – nome do utilizador; e – password correspondente ao utilizador. d e

R ESERVAR SALA Nesta aba é onde podemos efectuar a reserva de uma sala ao inserir os seguintes campos: f – identificador da sala; g – dia a reservar; h – horário da reserva. f g h

C ONSULTAR SALAS Nesta aba é onde podemos consultar uma sala e assim teremos de inserir os seguintes campos: i – podemos optar por 2 métodos para consulta, por sala ou dia/hora; j – preencher campos acerca da consulta que se pretende. i j

C ONSULTAR R ESERVAS Nesta aba é onde podemos consultar as nossas reservas e cancelar e assim teremos de inserir os seguintes campos: k – preencher campos acerca da reserva que se pretende. k