A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Value type-based smart proxies: a concept for adaptable distributed applications Markus Aleksy, Ralf Gitzel ACM International Conference Proceeding Series;

Apresentações semelhantes


Apresentação em tema: "Value type-based smart proxies: a concept for adaptable distributed applications Markus Aleksy, Ralf Gitzel ACM International Conference Proceeding Series;"— Transcrição da apresentação:

1 Value type-based smart proxies: a concept for adaptable distributed applications Markus Aleksy, Ralf Gitzel ACM International Conference Proceeding Series; Vol. 90 Proceedings of the 2004 international symposium on Information and communication technologies Apresentado por: Daniel Welfer Eduardo Machado

2 2 Sumário 1. Tema 2. Motivação e Estado da Arte 3. Problemas a resolver 4. Solução 5. Protótipo 6. Resultados e comparação 7. Conclusões

3 3 1. Tema Tornar uma aplicação distribuídas auto-ajustável; Realçar a performance de uma aplicação distribuída; Conceito de proxy; Utiliza CORBA como middleware; Explora o suporte de CORBA para “Value Type Objects”

4 4 2. Motivação Implementar a idéia do proxy design pattern para construir uma aplicação distribuída e tolerante a falhas. Contexto: “Um cliente precisa acessar o serviço de outro componente. Acesso direto é possível, mas pode não ser a melhor abordagem” Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., and Stal, M. (1996): A System of Patterns – Pattern- Oriented Software Architecture, John Wiley & Sons, Chichester

5 5 2. Motivação Exemplo 2: Uma aplicação que administra palestrantes. Nela, os clientes lêem objetos do servidor freqüentemente, para fins de consulta; Atributos de palestrantes como título, data, hora, localização e outros raramente mudam. Obviamente, se uma modificação ocorrer o novo estado desse objeto precisa ser transferidos para os clientes. Aleksy, M. and Kuhlins, S. (2001): Using Value Types to Improve Access to CORBA Objects, 2nd International Conference on Software Engineering, Artificial Intelligence, Networking & Parallel/Distributed Computing. Nagoya, Japan.

6 6 2. Motivação Além do desempenho, o proxy precisa dinamicamente reagir em relação a alguma mudança no ambiente distribuído; Se o servidor que abriga os objetos for desligado ou esses objetos migrarem para outro computador-servidor a conexão entre cliente e objetos não pode ser perdida; Tudo precisa ser transparente para o cliente;

7 7 3. Problemas a resolver Implementar uma solução para que o acesso ao componente servidor seja: Eficiente em tempo de execução; Seguro; Transparente e simples de usar; Implementar uma solução independente de plataforma e linguagem de programação; Ex: Cliente desenvolvido em Java e objetos servidor em Objective-C

8 8 4. Solução Utilizar o middleware CORBA; Independência de plataforma via IDL; Independência de linguagem via IDL compilers; Explorar a idéia de “value type objects” para implementar smart proxies; Counter é um objeto CORBA CachedCounter é um “value type objects”

9 9 4. Solução Original implementa um serviço particular; AbstractOriginal é a interface implementada pelo Proxy e Original; Proxy oferece a mesma interface que Original além de garantir o acesso à ele.

10 10 4. Solução Acesso usual a um objeto CORBA remoto: Cenário 1 Modelo que se quer evitar; Problemas de desempenho; Não tolerante a qualquer mudança do servidor. Ex: Interoperable Object Reference (IOR) torna-se inválido.

11 11 4. Solução Modelo simple pull: Cenário 2 Comunicação direta entre cliente e servidor O value type object periodicamente verifica o estado do objeto CORBA básico.

12 12 4. Solução Modelo pull com um objeto auxiliar: Cenário 3 Desacopla cliente e servidor através de Event Service; Desvantagem: objeto extra no lado cliente.

13 13 4. Solução Modelo push com um objeto auxiliar: Cenário 4 Objeto CORBA do servidor informa os clientes quando seu estado muda.

14 14 5. Protótipo Foi usado: – VisiBroker Event Service version 3.2; – JavaORB version 2.2.6 Ambiente com 3 computadores conectados em uma rede Ethernet de 10 Mbps. 1. Workstation SunUltra-1 com Solaris 2.6 e JDK 1.2.2 (servidor) 2. PC Pentium III, Linux 2.2.10 e JDK 1.1.8 (cliente) 3. Sun SPARCstation 10 com Solaris 2.5 (abriga o Event Service)

15 15 5. Resultados e Comparações Cliente enviava 100.000 requisições para o servidor (1 a cada 50 milisegundos) 1. Acesso remoto aos objetos CORBA de maneira usual; 2. Simple pull model; 3. Pull model com um objeto auxiliar; 4. Push model com um objeto auxiliar.

16 16 6. Resultados e Comparação Cenário 3 e 4 o “event service” é usado para comunicação entre o “value type object” e o objeto corba do servidor; No cenário 2 essa comunicação é direta; Cenário 3 e 4 possuem exigem um terceiro computador que hospede o “event service”. Assim, a comunicação entre cliente e servidor por intermédio desse possui uma latência maior. Além disso o “event service” usa o tipo any e exige marshalling and unmarshalling. Conseqüentemente o tempo de acesso é pior. Mas não muito pior.

17 17 7. Conclusões I O acesso usual a um objeto CORBA é de fácil implementação, porém tem o pior desempenho; O uso de value type object sem um event service possui o melhor desempenho. Entretanto, sem o uso de event service a conexão com o servidor é perdida.

18 18 7. Conclusões II Com envent service o cliente pode descobrir outro servidor (uma réplica). Assim, o serviço não é afetado. Dificuldade de determinar a freqüência de pooling; Necessidade de um objeto CORBA auxiliar no push model.

19 19 Notas Paper 2: Aleksy, M. and Kuhlins, S. (2001): Using Value Types to Improve Access to CORBA Objects, 2nd International Conference on Software Engineering, Artificial Intelligence, Networking & Parallel/Distributed Computing. Nagoya, Japan. Paper 1: Aleksy, M. and Gitzel, R. (2001): Value Type-based smart Proxies – a Concept for Adaptable Distributed Applications, ACM International Conference Proceeding Series; Vol. 90 Proceedings of the 2004 international symposium on Information and communication technologies Paper 1Paper 2 Motivação/Estado da Arte55 Problemas a Resolver33 Protótipo resultados e comparação15 Redação e formatação35


Carregar ppt "Value type-based smart proxies: a concept for adaptable distributed applications Markus Aleksy, Ralf Gitzel ACM International Conference Proceeding Series;"

Apresentações semelhantes


Anúncios Google