33
Recursos de Escalabilidade e Alta Disponibilidade para Aplicações Web Régis Eduardo Weizenmann Gregol [email protected]

Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Embed Size (px)

DESCRIPTION

Apresentação de TCC. Conceitos de Escalabilidade Vertical/Horizontal, Clusterização e Balanço de Carga. Testes de desempenho na Aplicação, desenvolvida com Ruby On Rails, Ajax, MySQL.

Citation preview

Page 1: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Recursos de Escalabilidade e Alta Disponibilidade para

Aplicações Web

Régis Eduardo Weizenmann [email protected]

Page 2: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Roteiro de Apresentação

* Introdução* Objetivos* Justificativa* Conceitos* Testes e Resultados

Page 3: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Introdução

* Popularização da Internet* Milhões de acessos* Redes sociais

Page 4: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Objetivo Geral

* Sistema Web de microblogging* Demonstrar técnicas de escalabilidade na

aplicação

Page 5: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Objetivos Específicos

* Referencial teórico* Análise e Estudo Experimental* Implementação mecanismos de

escalabilidade* Testes* Apresentação dos Resultados

Page 6: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Justificativa

* Twitter* Rails* Muitos acessos* Aplicação indisponível

Page 7: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

O Que é Escalabilidade?

* Habilidade para crescer* Manipular grande volume de dados* Manter-se Disponível

Page 8: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Escalabilidade Vertical

* Aumentar o processamento do servidor

Fonte: GoGrid (2010, p.06).

Page 9: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Escalabilidade Horizontal

* Adicionar mais nós a uma arquitetura de rede

Fonte: GoGrid (2010, p.06).

Page 10: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Balanceamento de Carga

* Divisão de trabalho entre servidores

Fonte: SourceForge (2010).

Page 11: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Clusterização

* Balanceamento e integração da aplicação replicada

Fonte: SourceForge (2010).

Page 12: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Ajax na aplicação

* Diminui refresh* Requisição necessária

Fonte: Raymond (2006, p.03).

Page 13: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

MySQL

* Alto desempenho* Confiabilidade

Fonte: Ferreira (2010).

Page 14: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Configurações

* Primeiro Servidor

WebRick

Page 15: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Configurações

WebRick

* Primeiro Servidor

Page 16: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Configurações

* Computador de Teste* Apache JMeter

Page 17: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Primeiro Teste

* Relatório de Sumário

Page 18: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Primeiro Teste

* Gráfico de Resultados

Page 19: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Escalabilidade Vertical

Page 20: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Segundo Teste

* Relatório de Sumário

Page 21: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Segundo Teste

* Gráfico de Resultados

Page 22: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Primeiro x SegundoTeste

Page 23: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Clusterização

Page 24: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Terceiro Teste

* Relatório de Sumário

Page 25: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Terceiro Teste

* Gráfico de Resultados

Page 26: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Segundo x Terceiro Teste

Page 27: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Escalabilidade Horizontal

Page 28: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Quarto Teste

* Relatório de Sumário

Page 29: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Quarto Teste

* Gráfico de Resultados

Page 30: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Terceiro x QuartoTeste

Page 31: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Desempenho na Aplicação

Page 32: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Agradecimentos

* Aos professores* Amigos* Familiares

Page 33: Recursos de Escalabilidade e Alta Disponibilidade Para Aplicações Web

Referências

Ferreira, Edmar. MySQL além do MyISAM e InnoDB, 2010. Disponível em: http://escalabilidade.com/2010/01/29/mysql-alem-do-myisam-e-innodb/

GoGrid, Complex Infrastructure Made Easy™. Scaling Your Internet Business. 2010.

RAYMOND, Scott. Ajax on Rails. 2006. 1ª Ed. O’Reilly Media, Inc, 2007. Gravenstein Highway North, Sebastopol, CA 95472. ISBN-10: 0596527446. ISBN-13: 978-0596527440.

SOURCEFORGE, Disponibilidade e Performance em ambientes de aplicações WEB. 2010. Disponível em: <http://sourceforge.net/apps/wordpress/demoiselle/2010/02/12/disponibilidade-performance-em-ambientes-de-aplicacoes-web/>.