• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 84
  • 29
  • Tagged with
  • 113
  • 113
  • 31
  • 24
  • 23
  • 22
  • 22
  • 20
  • 19
  • 19
  • 18
  • 17
  • 16
  • 16
  • 14
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
11

Escalonamento de tarefas imprecisas em ambiente distribuído

Oliveira, Romulo Silva de January 1997 (has links)
Sistemas computacionais de tempo real são identificados como aqueles sistemas submetidos a requisitos de natureza temporal. Nestes sistemas, os resultados devem estar corretos não somente do ponto de vista lógico, mas também devem ser gerados no momento correto. Um problema básico encontrado na construção de sistemas distribuídos de tempo real é a alocação e o escalonamento das tarefas nos recursos computacionais disponíveis. Existe uma dificuldade intrínsica em compatibilizar dois objetivos fundamentais: garantir que os resultados serão produzidos no momento desejado e dotar o sistema de flexibilidade para adaptar-se a um ambiente dinâmico e, assim, aumentar sua utilidade. Uma das técnicas existentes na literatura para resolver o problema de escalonamento tempo real é a Computação Imprecisa. Nesta técnica, cada tarefa da aplicação possui uma parte obrigatória e uma parte opcional. A parte obrigatória é capaz de gerar um resultado com a qualidade mínima, necessária para manter o sistema operando de maneira segura. A parte opcional refina este resultado, até que ele alcançe a qualidade desejada. Esta técnica procura conciliar os dois objetivos fundamentais citados antes. Entretanto, não existe na literatura um estudo amplo sobre a questão de "como resolver o problema do escalonamento quando sistemas de tempo real distribuídos são construidos a partir do conceito de Computação Imprecisa". O objetivo geral desta tese é mostrar como aplicações de tempo real, construídas a partir do conceito de Computação Imprecisa, podem ser escalonadas em ambiente distribuído. Em outras palavras, mostrar que o conceito de Computação Imprecisa pode ser adaptado para um ambiente onde tarefas executam em diferentes processadores e a comunicação entre elas é implementada através de mensagens. É mostrado que o problema proposto pode ser dividido em quatro problemas específicos. São eles: - Como garantir que as partes obrigatórias das tarefas serão concluídas antes dos respectivos deadlines, em um ambiente onde tarefas podem executar em diferentes processadores e o emprego de mensagens cria relações de precedência entre elas. - Como determinar que a execução de uma parte opcional não irá comprometer a execução das partes obrigatórias, previamente garantidas. - Como escolher quais partes opcionais devem ser executadas, na medida em que o recurso "tempo de processador disponível" não permite a execução de todas elas. - Como resolver qual tarefa executa em qual processador, de forma que todas as partes obrigatórias das tarefas possam ser garantidas e que as partes opcionais estejam distribuídas de forma que sua chance de execução seja maximizada. Nesta tese são apresentadas soluções de escalonamento para estes quatro problemas específicos. Desta forma, o texto mostra que efetivamente Computação Imprecisa pode ser usada como base para a construção de aplicações distribuídas de tempo real. / Real-time computing systems are defined as those systems subjected to timing constraints. In those systems, results must be not only logically correct but they also must be generated at the right moment. A basic problem one finds when building a distributed real time system is the allocation and scheduling of tasks on the available computing resources. There is an intrinsic difficulty in simultaneously achieving two fundamental goals: to guarantee that results are generated by the desired time and to make the system flexible enough so it can adapt to a dynamic environment and, that way, increase its own utility. The Imprecise Computation technique has been proposed in the literature as an approach to the scheduling of real-time systems. When this technique is used, each task has a mandatory part and an optional part. The mandatory part is able to generate a minimal quality result that is barely good enough to keep the system in a safe operational mode. The optional part refines the result until it achieves the desired quality level. This technique tries to conciliate the two fundamental goals mentioned above. Meanwhile, there is not in the literature a broad study on "how to solve the scheduling problem when real-time distributed systems are built based on Imprecise Computation concepts. "The overall goal of this theses is to show how real-time applications, that are built upon Imprecise Computation concepts, can be scheduled in a distributed environment. We intend to show that Imprecise Computation concepts can be adapted to an environment where tasks execute in different processors and communication among them is done by sending messages. It is shown in the text that we can split this problem in the following four specific problems: - How to guarantee that mandatory parts will be finished before or at the respective task deadline, when we consider that tasks can execute in different processors and the use of messages creates precedence relations among them. - How to know that the execution of an optional part will not jeopardize the execution of previously guaranteed mandatory parts. - How to chose which optional parts should be executed when the resource "available processor time" is not enough to execute all of them. - How to decide which task runs on which processor, in a way that all mandatory parts can be guaranteed and that optional parts are evenly spread over the system so as to maximize the chance they get actually executed. This theses presents scheduling solutions for those four specific problems. In this way, the text shows that Imprecise Computation can effectively be used as the conceptual base for the construction of distributed real-time applications.
12

Uma ferramenta de apoio r definiçao de requisitos da mdsodi no contexto do ambiente disen

Batista, Sueleni Mendez 04 February 2011 (has links)
Resumo: A crescente complexidade das aplicações, a contínua evolução tecnológica e o uso cada vez mais disseminado de redes de computadores têm estimulado os estudos referentes ao desenvolvimento de sistemas distribuídos. Sistemas distribuídos são bastante complexos, o que, conseqüentemente, reflete na complexidade de desenvolvimento do software. Para que o desenvolvimento de software distribuído seja uma tarefa produtiva, gerando também produtos de qualidade, é necessário que o ambiente de apoio ao desenvolvedor seja estruturado de modo a prover recursos que o auxiliem na realização do processo. Visando suprir a necessidade de ferramentas e ambientes de desenvolvimento de software distribuído, foram desenvolvidos a Metodologia para Desenvolvimento de Software Distribuído {MDSODI) e o ambiente Distributed Software Engineering Environment (DiSEN). DiSEN é um ambiente distribuído de desenvolvimento de software, no qual a MDSODI está inserida, que tem, como um de seus objetivos, permitir que vários desenvolvedores, atuando em locais distintos, possam trabalhar de forma cooperativa no desenvolvimento de software. O principal objetivo deste trabalho é o desenvolvimento de uma ferramenta de apoio à fase de requisitos da MDSODI no contexto do ambiente DiSEN. A ferramenta denominada REQUISITE apresenta um modelo de solução distribuída, baseada em cenários, independente de plataforma, onde vários stakeholders podem trabalhar de forma cooperativa, na fase de requisitos, no desenvolvimento de software distribuído.
13

Escalonamento de tarefas imprecisas em ambiente distribuído

Oliveira, Romulo Silva de January 1997 (has links)
Sistemas computacionais de tempo real são identificados como aqueles sistemas submetidos a requisitos de natureza temporal. Nestes sistemas, os resultados devem estar corretos não somente do ponto de vista lógico, mas também devem ser gerados no momento correto. Um problema básico encontrado na construção de sistemas distribuídos de tempo real é a alocação e o escalonamento das tarefas nos recursos computacionais disponíveis. Existe uma dificuldade intrínsica em compatibilizar dois objetivos fundamentais: garantir que os resultados serão produzidos no momento desejado e dotar o sistema de flexibilidade para adaptar-se a um ambiente dinâmico e, assim, aumentar sua utilidade. Uma das técnicas existentes na literatura para resolver o problema de escalonamento tempo real é a Computação Imprecisa. Nesta técnica, cada tarefa da aplicação possui uma parte obrigatória e uma parte opcional. A parte obrigatória é capaz de gerar um resultado com a qualidade mínima, necessária para manter o sistema operando de maneira segura. A parte opcional refina este resultado, até que ele alcançe a qualidade desejada. Esta técnica procura conciliar os dois objetivos fundamentais citados antes. Entretanto, não existe na literatura um estudo amplo sobre a questão de "como resolver o problema do escalonamento quando sistemas de tempo real distribuídos são construidos a partir do conceito de Computação Imprecisa". O objetivo geral desta tese é mostrar como aplicações de tempo real, construídas a partir do conceito de Computação Imprecisa, podem ser escalonadas em ambiente distribuído. Em outras palavras, mostrar que o conceito de Computação Imprecisa pode ser adaptado para um ambiente onde tarefas executam em diferentes processadores e a comunicação entre elas é implementada através de mensagens. É mostrado que o problema proposto pode ser dividido em quatro problemas específicos. São eles: - Como garantir que as partes obrigatórias das tarefas serão concluídas antes dos respectivos deadlines, em um ambiente onde tarefas podem executar em diferentes processadores e o emprego de mensagens cria relações de precedência entre elas. - Como determinar que a execução de uma parte opcional não irá comprometer a execução das partes obrigatórias, previamente garantidas. - Como escolher quais partes opcionais devem ser executadas, na medida em que o recurso "tempo de processador disponível" não permite a execução de todas elas. - Como resolver qual tarefa executa em qual processador, de forma que todas as partes obrigatórias das tarefas possam ser garantidas e que as partes opcionais estejam distribuídas de forma que sua chance de execução seja maximizada. Nesta tese são apresentadas soluções de escalonamento para estes quatro problemas específicos. Desta forma, o texto mostra que efetivamente Computação Imprecisa pode ser usada como base para a construção de aplicações distribuídas de tempo real. / Real-time computing systems are defined as those systems subjected to timing constraints. In those systems, results must be not only logically correct but they also must be generated at the right moment. A basic problem one finds when building a distributed real time system is the allocation and scheduling of tasks on the available computing resources. There is an intrinsic difficulty in simultaneously achieving two fundamental goals: to guarantee that results are generated by the desired time and to make the system flexible enough so it can adapt to a dynamic environment and, that way, increase its own utility. The Imprecise Computation technique has been proposed in the literature as an approach to the scheduling of real-time systems. When this technique is used, each task has a mandatory part and an optional part. The mandatory part is able to generate a minimal quality result that is barely good enough to keep the system in a safe operational mode. The optional part refines the result until it achieves the desired quality level. This technique tries to conciliate the two fundamental goals mentioned above. Meanwhile, there is not in the literature a broad study on "how to solve the scheduling problem when real-time distributed systems are built based on Imprecise Computation concepts. "The overall goal of this theses is to show how real-time applications, that are built upon Imprecise Computation concepts, can be scheduled in a distributed environment. We intend to show that Imprecise Computation concepts can be adapted to an environment where tasks execute in different processors and communication among them is done by sending messages. It is shown in the text that we can split this problem in the following four specific problems: - How to guarantee that mandatory parts will be finished before or at the respective task deadline, when we consider that tasks can execute in different processors and the use of messages creates precedence relations among them. - How to know that the execution of an optional part will not jeopardize the execution of previously guaranteed mandatory parts. - How to chose which optional parts should be executed when the resource "available processor time" is not enough to execute all of them. - How to decide which task runs on which processor, in a way that all mandatory parts can be guaranteed and that optional parts are evenly spread over the system so as to maximize the chance they get actually executed. This theses presents scheduling solutions for those four specific problems. In this way, the text shows that Imprecise Computation can effectively be used as the conceptual base for the construction of distributed real-time applications.
14

Uma Solução de escalonamento para o DPC++

Schlemer, Elgio January 2002 (has links)
Este trabalho descreve uma implementação de um modelo de escalonamento para a linguagem de programação DPC++. Esta linguagem, desenvolvida no Instituto de Informática da UFRGS, possibilita que uma aplicação orientada a objetos seja distribuída entre vários processadores através de objetos distribuídos. Muito mais que uma simples biblioteca de comunicação, o DPC ++ torna a troca de mensagens totalmente transparente aos objetos. A integração do DPC++ com o DECK, também em desenvolvimento, trará grandes inovações ao DPC++, principalmente pelo uso de theads. O escalonador proposto para este modelo utiliza estes recursos para implantar os chamados processos espiões, que monitoram a carga de uma máquina, enviando seus resultados ao escalonador. O escalonador implementado possui, desta forma, dois módulos: objetos espiões implementados como um serviço do DECK e o escalonador propriamente dito, incluído no objeto Diretório, parte integrante do DPC++.
15

Dasflow : uma arquitetura distribuída de armazenamento e processamento para dados de monitoramento de rede

Hoss, Diego Jonathan January 2015 (has links)
Orientador : Prof. Dr. Carmem Satie Hara / Dissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 24/09/2015 / Inclui referências : f. 88-92 / Resumo: O monitoramento de redes é uma atividade pertencente à área de gerência de redes, na qual efetua-se a coleta, armazenamento, processamento e análise dos dados de monitoramento. Para realizar esta atividade, existem ferramentas que implementam tais funcionalidades. Grande parte destas ferramentas são baseadas na arquitetura centralizada, e entre elas encontra-se o NfSen/Nfdump. Esta ferramenta é amplamente utilizada pelos administradores de rede por possuir boa documentação e ser de código aberto. O modelo centralizado possui limitações associadas à escalabilidade que são inerentes à arquitetura. Entre elas está a falta de redundância, um ponto único de falha e a ausência de balanceamento de carga. Isto significa que as ferramentas com arquitetura centralizada estão sujeitas a essas limitações, ou seja, existem limites no volume de armazenamento bem como na sua capacidade de coleta e processamento. Na literatura, encontram-se soluções para este problema baseadas em compressão dos dados e armazenamento distribuído de dados. Nesta dissertação, é proposta uma arquitetura distribuída chamada DASFlow aplicada à ferramenta de monitoramento de rede NfSen/Nfdump, cujo o objetivo é prover escalabilidade de coleta, armazenamento e processamento. Para isso, a arquitetura define os módulos StoreDAS-Cliente e StoreDAS-Servidor que atuam em conjunto com o sistema de arquivos distribuído (SAD) para prover escalabilidade de coleta e armazenamento. A escalabilidade de processamento é fornecida pelos módulos QueryDAS-Cliente e QueryDAS-Servidor. A arquitetura também prevê a existência do módulo de Metadados responsável por manter as informações sobre o armazenamento e distribuição dos dados de monitoramento. Os resultados experimentais mostram o potencial da arquitetura proposta. O DASFlow obteve menores tempos de resposta para o processamento das consultas mais frequentes que variam entre 13% e 34%, se comparados à ferramenta NfSen/Nfdump. Adicionalmente, a adoção de um sistema de arquivos distribuído mostrase eficaz ao prover escalabilidade para o armazenamento dos dados de monitoramento de rede. / Abstract: Network monitoring is one of the activities of the network management field, in which one collects, stores, processes and analyzes monitoring data. It relies on tools that implement such functionalities. Many of these tools are based on a centralized architecture, and among them is NfSen/Nfdump. NfSen/Nfdump is widely used among network administrators, due to a good documentation and the fact that it is open source. The centralized model has some limitations with respect to scalability, which are inherent to the architecture. One of them is the lack of redundancy, single point of failure and the absence of load balancing. As a result, centralized architecture tools are subject to the some limitations. That is, storage capacity is limited as well as the ability to collect and process data. Solutions to solve these problems, based on data compression and distributed data storage, can be found in the literature. In this dissertation, we propose a distributed architecture called DASFlow, which provides scalability for data collection, storage and processing. In this regard, the architecture defines the StoreDAS-Cliente and StoreDASServidor modules, which work together with a distributed file system (DFS) in order to provide data collection and storage scalability. Processing scalability is provided by the QueryDAS-Cliente and QueryDAS-Servidor modules. The architecture also contains a Metadata module, responsible for keeping the information about storage and distribution of monitoring data. The architecture has been implemented with the NfSen/Nfdump network monitoring tool and Ceph distributed file system. The experimental results show that the DASFlow architecture has achieved shorter response times for the processing of the most frequent queries, which vary between 13% and 34%, if compared to the original NfSen/Nfdump tool. Additionally, the use of a distributed file system has proved to be efficient in providing scalability for the storage of network monitoring data.
16

Sistema Aldeia : programação paralela e distribuída em Java sobre Infiniband e DECK

Righi, Rodrigo da Rosa January 2005 (has links)
Esse trabalho de dissertação está incluído no contexto das pesquisas realizadas no Grupo de Processamento Paralelo e Distribuído da UFRGS. Ele aborda as áreas da computação de alto desempenho, interfaces simples de programação e de sistemas de interconexão de redes velozes. A máquina paralela formada por agregados (clusters) tem se destacado por apresentar os recursos computacionais necessários às aplicações intensivas que necessitam de alto desempenho. Referente a interfaces de programação, Java tem se mostrado uma boa opção para a escrita de aplicações paralelas por oferecer os sistemas de RMI e de soquetes que realizam comunicação entre dois computadores, além de todas as facilidades da orientação a objetos. Na área a respeito de interconexão de rede velozes está emergindo como uma tentativa de padronização a nova tecnologia Infiniband. Ela proporciona uma baixa latência de comunicação e uma alta vazão de dados, além de uma série de vantagens implementadas diretamente no hardware. É neste contexto que se desenvolve o presente trabalho de dissertação de mestrado. O seu tema principal é o sistema Aldeia que reimplementa a interface bastante conhecida de soquetes Java para realizar comunicação assíncrona em agregados formados por redes de sistema. Em especial, o seu foco é redes configuradas com equipamentos Infiniband. O Aldeia objetiva assim preencher a lacuna de desempenho do sistema padrão de soquetes Java, que além de usar TCP/IP possui um caráter síncrono. Além de Infiniband, o Aldeia também procura usufruir dos avanços já realizados na biblioteca DECK, desenvolvida no GPPD da UFRGS. Com a sua adoção, é possível realizar comunicação com uma interface Java sobre redes Myrinet, SCI, além de TCP/IP. Somada a essa vantagem, a utilização do DECK também proporciona a propriedade de geração de rastros para a depuração de programas paralelos escritos com o Aldeia. Uma das grandes vantagens do Aldeia está na sua capacidade de transmitir dados assincronamente. Usando essa técnica, cálculos da aplicação podem ser realizados concorrentemente com as operações pela rede. Por fim, os canais de dados do Aldeia substituem perfeitamente aqueles utilizados para a serialização de objetos. Nesse mesmo caminho, o Aldeia pode ser integrado à sistemas que utilizem a implementação de soquetes Java, agora para operar sobre redes de alta velocidade. Palavras-chave: Arquitetura Infiniband, agregado de computadores, linguagem de programação Java, alto desempenho, interface de programação.
17

Primitivas para suporte à distribuição de objetos direcionados à pervasive computing

Silva, Luciano Cavalheiro da January 2003 (has links)
Renovados são os desa os trazidos à computação distribuída pelos recentes desenvolvimentos nas tecnologias de computação móvel. Tais avanços inspiram uma perspectiva na qual a computação tornar-se-á uma entidade ubíqua em um futuro próximo, estando presente nas mais simples atividades do dia-a-dia. Esta perspectiva é motivadora das pesquisas conduzidas no escopo do projeto ISAM, as quais investigam as questões relativas ao uso da computação em ambientes móveis de larga escala. Neste trabalho é apresentado o sistema PRIMOS (PRIMitives for Object Scheduling), o qual busca, pela complementação da plataforma Java, satisfazer as emergentes necessidades do ISAM. Especi camente, o PRIMOS constitui um conjunto de primitivas para instanciação remota e migração de objetos, comunicação e monitoração, direcionadas a um ambiente de computação distribuída de larga escala de características pervasivas. A primitiva de instanciação remota disponibilizada pelo PRIMOS aumenta a plataforma Java padrão com a possibilidade de criar e ativar objetos em nodos remotos do sistema. Por sua vez, a primitiva de migração faculta a relocação de objetos. A consecu- ção de tais semânticas tem como sub-produto a de nição de semânticas para ativação e desativação de objetos, assim como para captura e restauração de contexto de execução. Sob a perspectiva da comunicação, o PRIMOS de ne um esquema de endereçamento independente de protocolo de transporte, assim como uma interface neutra para acesso às facilidades de comunicação. A integração destas funcionalidades ao mecanismo de invocações remotas da plataforma Java, o RMI, permite a desvinculação deste da pilha TCP/IP. Por conseguinte, habilita a adoção de transportes otimizados ao hardware de comunicação disponibilizado pelo sistema. No que se refere à monitoração, o PRIMOS de ne um esquema exível e extensível baseado em sensores. A exibilidade vem principalmente da possibilidade dos sensores terem seus parâmetros de operação recon gurados a qualquer momento em resposta a novas necessidades do sistema. Por outro lado, o sistema é extensível pois o conjunto de sensores básicos, ditos nativos, pode ser aumentado por sensores providos pela aplicação. Com intuito de validar as idéias postuladas, um protótipo foi construído para o sistema. Sobre este, baterias de testes foram realizadas para cada uma das primitivas constituintes do PRIMOS.
18

Uma Solução de escalonamento para o DPC++

Schlemer, Elgio January 2002 (has links)
Este trabalho descreve uma implementação de um modelo de escalonamento para a linguagem de programação DPC++. Esta linguagem, desenvolvida no Instituto de Informática da UFRGS, possibilita que uma aplicação orientada a objetos seja distribuída entre vários processadores através de objetos distribuídos. Muito mais que uma simples biblioteca de comunicação, o DPC ++ torna a troca de mensagens totalmente transparente aos objetos. A integração do DPC++ com o DECK, também em desenvolvimento, trará grandes inovações ao DPC++, principalmente pelo uso de theads. O escalonador proposto para este modelo utiliza estes recursos para implantar os chamados processos espiões, que monitoram a carga de uma máquina, enviando seus resultados ao escalonador. O escalonador implementado possui, desta forma, dois módulos: objetos espiões implementados como um serviço do DECK e o escalonador propriamente dito, incluído no objeto Diretório, parte integrante do DPC++.
19

ORPIS: um modelo de consistência de conteúdo replicado em servidores Web distribuídos

Lima, Cristiano Cachapuz e January 2003 (has links)
O surgimento de novas aplicações que utilizam o protocolo HTTP nas suas transações e a crescente popularidade da World Wide Web (WWW) provocaram pesquisas pelo aumento do desempenho de servidores Web. Para tal, uma das alternativas propostas neste trabalho é utilizar um conjunto de servidores Web distribuídos que espalham a carga de requisições entre vários computadores, atuando como um só associado a uma estratégia de replicação de conteúdo. Um dos problemas centrais a ser resolvido em servidores Web distribuídos é como manter a consistência das réplicas de conteúdo entre os equipamentos envolvidos. Esta dissertação apresenta conceitos fundamentais envolvendo o tema replicação de conteúdo em servidores Web distribuídos. São mostrados detalhes sobre arquitetura de servidores Web distribuídos, manutenção da consistência em ambientes de servidores Web distribuídos, uso de replicação e formas de replicação. Além disso, são citados alguns trabalhos correlatos ao propósito de manter réplicas consistentes em ambientes de servidores Web distribuídos. Este trabalho tem por objetivo propor um modelo de manutenção da consistência de conteúdo em servidores Web distribuídos com características de transparência e autonomia. O modelo, denominado One Replication Protocol for Internet Servers (ORPIS), adota uma estratégia de propagação otimista porque não existe sincronismo no envio das atualizações para as réplicas. Este trabalho apresenta os principais componentes tecnológicos empregados na Web, além dos problemas causados pela escalabilidade e distribuição inerentes a esse ambiente. São descritas as principais técnicas de aumento de desempenho de servidores Web que atualmente vêm sendo utilizadas. O modelo ORPIS é descrito, sendo apresentados seus pressupostos, elencados seus componentes e detalhados os seus algoritmos de funcionamento. Este trabalho dá uma visão geral sobre a implementação e os testes realizados em alguns módulos do protótipo do modelo, caracterizando o ambiente de desenvolvimento do protótipo e detalhes da implementação. São enumerados os atributos e métodos das classes do protótipo e definidas as estruturas de dados utilizadas. Além disso, apresentam-se os resultados obtidos da avaliação funcional dos módulos implementados no protótipo. Um ponto a ser salientado é a compatibilidade do modelo ORPIS aos servidores Web existentes, sem a necessidade de modificação em suas configurações. O modelo ORPIS é baseado na filosofia de código aberto. Durante o desenvolvimento do protótipo, o uso de software de código aberto proporcionou um rápido acesso às ferramentas necessárias (sistema operacional, linguagens e gerenciador de banco de dados), com possibilidade de alteração nos códigos fonte como uma alternativa de customização.
20

ORPIS: um modelo de consistência de conteúdo replicado em servidores Web distribuídos

Lima, Cristiano Cachapuz e January 2003 (has links)
O surgimento de novas aplicações que utilizam o protocolo HTTP nas suas transações e a crescente popularidade da World Wide Web (WWW) provocaram pesquisas pelo aumento do desempenho de servidores Web. Para tal, uma das alternativas propostas neste trabalho é utilizar um conjunto de servidores Web distribuídos que espalham a carga de requisições entre vários computadores, atuando como um só associado a uma estratégia de replicação de conteúdo. Um dos problemas centrais a ser resolvido em servidores Web distribuídos é como manter a consistência das réplicas de conteúdo entre os equipamentos envolvidos. Esta dissertação apresenta conceitos fundamentais envolvendo o tema replicação de conteúdo em servidores Web distribuídos. São mostrados detalhes sobre arquitetura de servidores Web distribuídos, manutenção da consistência em ambientes de servidores Web distribuídos, uso de replicação e formas de replicação. Além disso, são citados alguns trabalhos correlatos ao propósito de manter réplicas consistentes em ambientes de servidores Web distribuídos. Este trabalho tem por objetivo propor um modelo de manutenção da consistência de conteúdo em servidores Web distribuídos com características de transparência e autonomia. O modelo, denominado One Replication Protocol for Internet Servers (ORPIS), adota uma estratégia de propagação otimista porque não existe sincronismo no envio das atualizações para as réplicas. Este trabalho apresenta os principais componentes tecnológicos empregados na Web, além dos problemas causados pela escalabilidade e distribuição inerentes a esse ambiente. São descritas as principais técnicas de aumento de desempenho de servidores Web que atualmente vêm sendo utilizadas. O modelo ORPIS é descrito, sendo apresentados seus pressupostos, elencados seus componentes e detalhados os seus algoritmos de funcionamento. Este trabalho dá uma visão geral sobre a implementação e os testes realizados em alguns módulos do protótipo do modelo, caracterizando o ambiente de desenvolvimento do protótipo e detalhes da implementação. São enumerados os atributos e métodos das classes do protótipo e definidas as estruturas de dados utilizadas. Além disso, apresentam-se os resultados obtidos da avaliação funcional dos módulos implementados no protótipo. Um ponto a ser salientado é a compatibilidade do modelo ORPIS aos servidores Web existentes, sem a necessidade de modificação em suas configurações. O modelo ORPIS é baseado na filosofia de código aberto. Durante o desenvolvimento do protótipo, o uso de software de código aberto proporcionou um rápido acesso às ferramentas necessárias (sistema operacional, linguagens e gerenciador de banco de dados), com possibilidade de alteração nos códigos fonte como uma alternativa de customização.

Page generated in 0.1137 seconds