999 resultados para Arquitectura distribuïda
Resumo:
Al llarg d'aquest treball es presenten les tecnologies i els processos que s'han fet servir en la construcció de l'esmentada botiga virtual i el seu gestor. L'objectiu és crear un programari flexible, portable, reutilitzable, d'alt rendiment i intel·ligible
Resumo:
As características do tráfego na Internet são cada vez mais complexas devido à crescente diversidade de aplicações, à existência de diferenças drásticas no comportamento de utilizadores, à mobilidade de utilizadores e equipamentos, à complexidade dos mecanismos de geração e controlo de tráfego, e à crescente diversidade dos tipos de acesso e respectivas capacidades. Neste cenário é inevitável que a gestão da rede seja cada vez mais baseada em medições de tráfego em tempo real. Devido à elevada quantidade de informação que é necessário processar e armazenar, é também cada vez maior a necessidade das plataformas de medição de tráfego assumirem uma arquitectura distribuída, permitindo o armazenamento distribuído, replicação e pesquisa dos dados medidos de forma eficiente, possivelmente imitando o paradigma Peer-to-Peer (P2P). Esta dissertação descreve a especificação, implementação e teste de um sistema de medição de tráfego com uma arquitectura distribuída do tipo P2P, que fornece aos gestores de rede uma ferramenta para configurar remotamente sistemas de monitorização instalados em diversos pontos da rede para a realização de medições de tráfego. O sistema pode também ser usado em redes orientadas à comunidade onde os utilizadores podem partilhar recursos das suas máquinas para permitir que outros realizem medições e partilhem os dados obtidos. O sistema é baseado numa rede de overlay com uma estrutura hierárquica organizada em áreas de medição. A rede de overlay é composta por dois tipos de nós, denominados de probes e super-probes, que realizam as medições e armazenam os resultados das mesmas. As superprobes têm ainda a função de garantir a ligação entre áreas de medição e gerir a troca de mensagens entre a rede e as probes a elas conectadas. A topologia da rede de overlay pode mudar dinamicamente, com a inserção de novos nós e a remoção de outros, e com a promoção de probes a super-probes e viceversa, em resposta a alterações dos recursos disponíveis. Os nós armazenam dois tipos de resultados de medições: Light Data Files (LDFs) e Heavy Data Files (HDFs). Os LDFs guardam informação relativa ao atraso médio de ida-evolta de cada super-probe para todos os elementos a ela ligados e são replicados em todas as super-probes, fornecendo uma visão simples mas facilmente acessível do estado da rede. Os HDFs guardam os resultados detalhados das medições efectuadas a nível do pacote ou do fluxo e podem ser replicados em alguns nós da rede. As réplicas são distribuídas pela rede tendo em consideração os recursos disponíveis nos nós, de forma a garantir resistência a falhas. Os utilizadores podem configurar medições e pesquisar os resultados através do elemento denominado de cliente. Foram realizados diversos testes de avaliação do sistema que demonstraram estar o mesmo a operar correctamente e de forma eficiente.
Resumo:
El treball final de carrera està compost de l¿anàlisi, disseny i implementació d'una utilitat de Workflow que dóna servei a una web per gestionar les reclamacions i queixes d'una empresa. La part del Workflow s'ha pensat per ser totalment configurable a les particularitats d'un determinat aplicatiu i per donar servei a tantes aplicacions com faci falta simultàniament.L'anàlisi i el disseny s'han basat en la metodologia UML dins el paradigma de l'Orientació a Objectes juntament amb diversos patrons de disseny com pot ser el MVC que ha permès separar completament la lògica de negoci (Workflow) de la presentació (Web). Per les 2 parts: Workflow i web s¿ha fet ús d'una arquitectura distribuïda.
Resumo:
La gestió de xarxes és un camp molt ampli i inclou molts aspectes diferents. Aquesta tesi doctoral està centrada en la gestió dels recursos en les xarxes de banda ampla que disposin de mecanismes per fer reserves de recursos, com per exemple Asynchronous Transfer Mode (ATM) o Multi-Protocol Label Switching (MPLS). Es poden establir xarxes lògiques utilitzant els Virtual Paths (VP) d'ATM o els Label Switched Paths (LSP) de MPLS, als que anomenem genèricament camins lògics. Els usuaris de la xarxa utilitzen doncs aquests camins lògics, que poden tenir recursos assignats, per establir les seves comunicacions. A més, els camins lògics són molt flexibles i les seves característiques es poden canviar dinàmicament. Aquest treball, se centra, en particular, en la gestió dinàmica d'aquesta xarxa lògica per tal de maximitzar-ne el rendiment i adaptar-la a les connexions ofertes. En aquest escenari, hi ha diversos mecanismes que poden afectar i modificar les característiques dels camins lògics (ample de banda, ruta, etc.). Aquests mecanismes inclouen els de balanceig de la càrrega (reassignació d'ample de banda i reencaminament) i els de restauració de fallades (ús de camins lògics de backup). Aquests dos mecanismes poden modificar la xarxa lògica i gestionar els recursos (ample de banda) dels enllaços físics. Per tant, existeix la necessitat de coordinar aquests mecanismes per evitar possibles interferències. La gestió de recursos convencional que fa ús de la xarxa lògica, recalcula periòdicament (per exemple cada hora o cada dia) tota la xarxa lògica d'una forma centralitzada. Això introdueix el problema que els reajustaments de la xarxa lògica no es realitzen en el moment en què realment hi ha problemes. D'altra banda també introdueix la necessitat de mantenir una visió centralitzada de tota la xarxa. En aquesta tesi, es proposa una arquitectura distribuïda basada en un sistema multi agent. L'objectiu principal d'aquesta arquitectura és realitzar de forma conjunta i coordinada la gestió de recursos a nivell de xarxa lògica, integrant els mecanismes de reajustament d'ample de banda amb els mecanismes de restauració preplanejada, inclosa la gestió de l'ample de banda reservada per a la restauració. Es proposa que aquesta gestió es porti a terme d'una forma contínua, no periòdica, actuant quan es detecta el problema (quan un camí lògic està congestionat, o sigui, quan està rebutjant peticions de connexió dels usuaris perquè està saturat) i d'una forma completament distribuïda, o sigui, sense mantenir una visió global de la xarxa. Així doncs, l'arquitectura proposada realitza petits rearranjaments a la xarxa lògica adaptant-la d'una forma contínua a la demanda dels usuaris. L'arquitectura proposada també té en consideració altres objectius com l'escalabilitat, la modularitat, la robustesa, la flexibilitat i la simplicitat. El sistema multi agent proposat està estructurat en dues capes d'agents: els agents de monitorització (M) i els de rendiment (P). Aquests agents estan situats en els diferents nodes de la xarxa: hi ha un agent P i diversos agents M a cada node; aquests últims subordinats als P. Per tant l'arquitectura proposada es pot veure com una jerarquia d'agents. Cada agent és responsable de monitoritzar i controlar els recursos als que està assignat. S'han realitzat diferents experiments utilitzant un simulador distribuït a nivell de connexió proposat per nosaltres mateixos. Els resultats mostren que l'arquitectura proposada és capaç de realitzar les tasques assignades de detecció de la congestió, reassignació dinàmica d'ample de banda i reencaminament d'una forma coordinada amb els mecanismes de restauració preplanejada i gestió de l'ample de banda reservat per la restauració. L'arquitectura distribuïda ofereix una escalabilitat i robustesa acceptables gràcies a la seva flexibilitat i modularitat.
Resumo:
Tant en la meva etapa d’estudiant com en la meva curta vida laboral, he participat en el desenvolupament de varies aplicacions de gestió, tant d’escriptori com web, que majoritàriament sempre estaven dividides en tres capes però en dos nivells: la base de dades i l’aplicació, que contenia tant la lògica de negoci com la vista. Des de fa temps he tingut la curiositat i la necessitat d’intentar desenvolupar una aplicació de gestió que estigui distribuïda en tres o més nivells, separant el model de dades i la lògica de negoci de la vista. Crec que el treball de fi de carrera és idoni per desenvolupar-la. L’aplicació a desenvolupar anirà destinada a la gestió d’un servei d’informàtica, que s’encarrega de resoldre les incidències, inventariar i realitzar el manteniment preventiu dels equips informàtics d’una o de varies empreses. Es crearà una aplicació que contindrà el model de dades i la lògica de negoci. També es crearan dues aplicacions clients: una aplicació d’escriptori que donarà accés a totes i cadascuna de les funcionalitats del sistema i una aplicació web que oferirà un accés lleuger i des de qualsevol ubicació a les funcionalitats d’explotació del sistema. Per últim, també es crearà una altre aplicació web que s’encarregarà de generar els llistats sol•licitats per les dues aplicacions clients. D’aquesta manera també es centralitzarà la gestió dels llistats de les aplicacions del sistema. Per desenvolupar el sistema, s’utilitzarà la plataforma J2EE de Java, i es comptarà amb l’ajuda de marcs de treball com, per exemple, Oracle ADF o JasperReports. Com a conclusió general, puc assegurar que si es distribueixen les tres capes d’un sistema en tres nivells s’obtenen beneficis en l’administració, en el manteniment, en l’escalabilitat, en la flexibilitat i en la reutilització de les aplicacions. El principal inconvenient és el possible augment de lentitud en les aplicacions clients.
Resumo:
Tant en la meva etapa d’estudiant com en la meva curta vida laboral, he participat en el desenvolupament de varies aplicacions de gestió, tant d’escriptori com web, que majoritàriament sempre estaven dividides en tres capes però en dos nivells: la base de dades i l’aplicació, que contenia tant la lògica de negoci com la vista. Des de fa temps he tingut la curiositat i la necessitat d’intentar desenvolupar una aplicació de gestió que estigui distribuïda en tres o més nivells, separant el model de dades i la lògica de negoci de la vista. Crec que el treball de fi de carrera és idoni per desenvolupar-la. L’aplicació a desenvolupar anirà destinada a la gestió d’un servei d’informàtica, que s’encarrega de resoldre les incidències, inventariar i realitzar el manteniment preventiu dels equips informàtics d’una o de varies empreses. Es crearà una aplicació que contindrà el model de dades i la lògica de negoci. També es crearan dues aplicacions clients: una aplicació d’escriptori que donarà accés a totes i cadascuna de les funcionalitats del sistema i una aplicació web que oferirà un accés lleuger i des de qualsevol ubicació a les funcionalitats d’explotació del sistema. Per últim, també es crearà una altre aplicació web que s’encarregarà de generar els llistats sol•licitats per les dues aplicacions clients. D’aquesta manera també es centralitzarà la gestió dels llistats de les aplicacions del sistema. Per desenvolupar el sistema, s’utilitzarà la plataforma J2EE de Java, i es comptarà amb l’ajuda de marcs de treball com, per exemple, Oracle ADF o JasperReports. Com a conclusió general, puc assegurar que si es distribueixen les tres capes d’un sistema en tres nivells s’obtenen beneficis en l’administració, en el manteniment, en l’escalabilitat, en la flexibilitat i en la reutilització de les aplicacions. El principal inconvenient és el possible augment de lentitud en les aplicacions clients.
Resumo:
O recurso à monitorização do comportamento dos programas durante a execução é necessário em diversos contextos de aplicação. Por exemplo, para verificar a utilização dos recursos computacionais durante a execução, para calcular métricas que permitam melhor definir o perfil da aplicação ou para melhor identificar em que pontos da execução estão as causas de desvios do comportamento desejado de um programa e, noutros casos, para controlar a configuração da aplicação ou do sistema que suporta a sua execução. Esta técnica tem sido aplicada, quer no caso de programas sequenciais, quer se trate de programas distribuídos. Em particular, no caso de computações paralelas, dada a complexidade devida ao seu não determinismo, estas técnicas têm sido a melhor fonte de informação para compreender a execução da aplicação, quer em termos da sua correcção, quer na avaliação do seu desempenho e utilização dos recursos computacionais. As principais dificuldades no desenvolvimento e na adopção de ferramentas de monitorização, prendem-se com a complexidade dos sistemas de computação paralela e distribuída e com a necessidade de desenvolver soluções específicas para cada plataforma, para cada arquitectura e para cada objectivo. No entanto existem funcionalidades genéricas que, se presentes em todos os casos, podem ajudar ao desenvolvimento de novas ferramentas e à sua adaptação a diferentes ambientes computacionais. Esta dissertação propõe um modelo para suportar a observação e o controlo de aplicações paralelas e distribuídas (DAMS - Distributed ApplicationsMonitoring System). O modelo define uma arquitectura abstracta de monitorização baseada num núcleo mínimo sobre o qual assentam conjuntos de serviços que realizam as funcionalidades pretendidas em cada cenário de utilização. A sua organização em camadas de abstracção e a capacidade de extensão modular, permitem suportar o desenvolvimento de conjuntos de funcionalidades que podem ser partilhadas por distintas ferramentas. Por outro lado, o modelo proposto facilita o desenvolvimento de ferramentas de observação e controlo, sobre diferentes plataformas de suporte à execução. Nesta dissertação, são apresentados exemplos da utilização do modelo e da infraestrutura que o suporta, em diversos cenários de observação e controlo. Descreve-se também a experimentação realizada, com base em protótipos desenvolvidos sobre duas plataformas computacionais distintas.
Resumo:
Este estágio, realizado na CrowdProcess, consistiu em integrar a equipa da empresa, trabalhando na área do Design de Comunicação, Web e Gráfico, integrado no Departamento de Comunicação da empresa. A CrowdProcess é uma plataforma de computação distribuída que utiliza o poder de processamento dos browsers ligados para correr tarefas de computação distribuída. Uma vez que se trata de um produto online, a maioria do trabalho desenvolvido diz respeito a design e desenvolvimento web e apenas uma pequena parte dedicada a design gráfico. O trabalho foi desenvolvido com as linguagens HTML, CSS e JavaScript. Foram tidos em consideração os princípios de Design, Usabilidade e Arquitectura de Informação, com principal foco na prototipagem dos vários objectos desenvolvidos.