Pular para o conteúdo principal

Postagens

Mostrando postagens com o rótulo sistemas distribuidos

Projeto de sistemas distribuídos usando CORBA, parte III : Classe relógio , Classe Servidor e Classe Servant

Vou iniciar o post pedindo desculpas por ter demorado a concluir essa serie de post sobre sistemas distribuídos com CORBA , as disciplinas no doutorado apertaram aqui no DAS e tive que me afastar do blog por um tempo :-) . Para quem chegou agora , esse post é precedido de 2 posts anteriores de um trabalho da disciplina de sistemas distribuídos , projeto esse feito no 2º trimestre de 2011, confira abaixo os 2 posts anteriores: Projeto de sistemas distribuídos usando CORBA, parte I : O projeto Projeto de sistemas distribuídos usando CORBA, parte II : Primeiros passos Para finalizar essa serie de artigos vamos comentar o funcionamento das seguintes classes: - Classe relógio , que controla a evolução do relógio lógico de lamport . -Classe servidor de mensagem , que conforme o próprio nome diz é responsável por implementar o servidor de mensagens - Classe mensagemServant que é o código que utiliza o corba para responder aos requisitos advindos do servidor.

Web services

Nossa  apresentação sobre Web Services. Para quem programa em java é um tópico bem interessante , outra tecnologia que torna os serviços de software muito mais dinâmicos.  Esse seminario foi apresentado na disciplina de sistemas distribuídos no DAS - UFSC  Enjoy e não esqueça de comentar ... Web Services

Projeto de sistemas distribuídos usando CORBA, parte II : Primeiros passos

1. Um pouco mais sobre o CORBA O padrão CORBA é um framework que permite que aplicações distribuídas em uma rede (local ou mesmo na internet) comuniquem-se entre si e troquem informações. Estas aplicações podem estar sendo executadas em diferentes plataformas (Intel, Sun, etc) e sistemas operacionais (Windows, Linux, Unix, etc) e podem ter  sido construídas em diferentes linguagens de programação.  Utilizando o padrão CORBA é possível ter aplicações completamente distribuídas, potencialmente com cada pedaço de software sendo executado em qualquer parte da rede e em qualquer plataforma, sem que o usuário perceba que isto está acontecendo e sem que o desenvolvedor precise se preocupar em criar soluções que resolvam os problemas de interoperabilidade entre os diferentes pedaços da aplicação. Atualmente, diversas ferramentas já suportam o padrão CORBA, como Delphi 4, JBuilder 2, Oracle 8i, Cold Fusion e C++ Builder. Uma grande vantagem de CORBA é ser um padrão diretamente s...

Projeto de sistemas distribuídos usando CORBA, parte I : O projeto

Na disciplina de Sistemas distribuídos (2º Trimestre -PPGEAS- UFSC - 2011) , tive que fazer um projeto em CORBA para 3 estações , a idéia era termos 3 estações funcionando em maquinas diferentes enviando mensagens uma para as outras, além disso utilizaríamos o conceito de relógios escalares de Lamport para poder ordenar os eventos e mensagens para cumprir a ordem total na entrega das mensagens na camada de aplicação , vou criar uma serie de posta explicando como fizemos o projeto e as dificuldades e detalhes da implementação. Em tempo , foi por isso que passei um bom tempo sem publicar nada , a disciplina de sistemas distribuídos  e muito extensa e por isso tive que me dedicar e fiquei sem tempo para o blog Vamos começar com uma explicação simples sobre o CORBA, segundo a wikipedia : "CORBA (abreviado de Common Object Request Broker Architecture) é a arquitetura padrão criada pelo Object Management Group para estabelecer e simplificar a troca de dados entre sistemas distri...

Sistemas distribuídos: Introdução ao JAVA RMI

O bjetos remotos são objetos cujos métodos podem ser chamados remotamente, como se fossem locais. O Cliente precisa, de alguma forma, localizar e obter uma instância do objeto remoto . Depois que o cliente tem a referência, faz chamadas nos métodos do objeto remoto usando a mesma sintaxe que usaria se o objeto fosse local. Objetos remotos abstraem toda a complexidade da comunicação em rede.

Sistemas distribuidos: Enviando mensagens TCP Parte II - Servidor

Igual ao servidor UDP esse servidor só vai receber a mensagem e envia-la de volta , ou seja é um servidor de ECO mas com boa vontade basta fazer algumas alterações que vc tem um servidor de chat :-) . Server TCP: import java.net.*; import java.io.*; public class TCPServer { public static void main(String[] args) { try { int serverPort = 7896; ServerSocket listenSocket = new ServerSocket(serverPort); //socket de escuta o socket que vai atender as requisições while(true){ Socket client = listenSocket.accept( ); Connection c = new Connection(client); //precisamos criar a classe conection que vai //inicializar nossas threads para atender a cada requisição } } catch (IOException e) { System.out.println("Listem :" + e.getMessage( )); } }//fim do main }//fim da classe Depois de fin...

Sistemas distribuidos: Enviando mensagens TCP Parte I - Cliente

Aproveitando que estou fazendo a disciplina de  sistemas distribuídos no Doutorado continuo minha serie de posts sobre o assunto , dessa vez vamos conectar dois sistemas usando TCP , abaixo segue o codigo do cliente implementado e testado , lembre que para passar os dois argumentos para testar o cliente você precisa seguir as mesmas instruções de configuração que foram passadas no meu post sobre envio de mensagens UDP , veja o post antigo aqui . Código do cliente: import java.net.*; import java.io.*; public class TCPCliente { public static void main(String[] args) { //argumentos fornecem a mensagem e o nome de host do destino //argumento 0 é a mensagem , o 1 é o ip de destino do servidor Socket s = null; try{ int serverPort = 7896 ; // porta do servidor s= new Socket(args[1], serverPort); // ip e porta do servidor DataInputStream in = new DataInputStream(s.getInputStream( ) ); ...

Como enviar mensagem via UDP em JAVA - PARTE II - Server

Continuando o post anterior agora vamos ver a implementação do servidor UDP em Java: Server de mensagem UDP import java.net.*; import java.io.*; public class UDPServer { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here try { //criacao do socket UDP datagrama //6789 é o valor da porta a ser usada pelo servidor DatagramSocket aSocket = new DatagramSocket(6789); //tamanho do buffer de recebimento de mensagem byte[] buffer = new byte[1000]; //loop infinito while (true) { //criacao do pacote DatagramPacket request = new DatagramPacket(buffer, buffer.length); //receive bloqueante , o programa fica parado aqui até receber um pacote aSocket.receive(request); // preparar pacote para envio de resposta nada ...

Como enviar mensagem via UDP em JAVA - PARTE I - Client

Esse artigo é legal para quem pretende usar sockets UDP em aplicações Java , a partir desse código dá para desenrolar em outras aplicações mais interessantes. código cliente import java.io.*; import java.net.*; public class UDPClient { public static void main(String[] args) { try { // Criação de sockets UDP - Datagramas DatagramSocket aSocket = new DatagramSocket( ); //mensagem é o primeiro argumento do executavel //tem que ser enviado em bytes byte[ ] m = args[0].getBytes(); //descobre o nome do endereço a partir do ip InetAddress aHost = InetAddress.getByName(args[1]); //imprime o nome relativo ao IP System.out.println("Host :" + aHost.getHostName( ) ); //porta do servidor int serverPort = 6789; //montagem do pacote a ser enviado DatagramPacket request = new DatagramP...