imagens com escalabilidade - arquitetura de dados

11
MBA em Arquitetura de Soluções 1 Arquitetura de Banco de Dados PÓS - GRADUAÇÃO MBA em Arquitetura de Soluções Arquitetura de Bancos de Dados Solução para Publicação de Imagens em ambiente web de alta disponibilidade Constantino Junior - RM 45165 Felipe Caparelli - RM 45346 Felipe Lima - RM 45169 Robson Moreira - RM 44979 Prof a Dr a Regina Cantele Out/2013

Upload: felipe-caparelli

Post on 05-Dec-2014

485 views

Category:

Technology


1 download

DESCRIPTION

Nosso estudo de caso apresenta uma solução de arquitetura para o problema de geração e armazenamento de imagens para um site. Utilizando o poder da nuvem (cloud), combinado a tecnologias de cache e tratamento de imagens, foi possível alcançar escalabilidade e robustez na geração das imagens, o que permite ao negócio continuar estável e eficiente.

TRANSCRIPT

Page 1: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 1 Arquitetura de Banco de Dados

PÓS-GRADUAÇÃO

MBA em Arquitetura de Soluções

Arquitetura de Bancos de Dados

Solução para Publicação de Imagens em ambiente web

de alta disponibilidade

Constantino Junior - RM 45165

Felipe Caparelli - RM 45346

Felipe Lima - RM 45169

Robson Moreira - RM 44979

Profa Dra Regina Cantele

Out/2013

Page 2: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 2 Arquitetura de Banco de Dados

1. Introdução

1. Sistema

2. Problemas

Objetivos

1. Arquitetura

• Tecnologias utilizadas

2. Aspectos Positivos e Negativos

3. Conclusão

SUMÁRIO

Page 3: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 3 Arquitetura de Banco de Dados

1. Introdução - Sistema

O sistema de anúncios FIAP, é alimentado com diversostipos de imagens associadas a dados (imagens de veículos,anúncios, notícias e etc.).

As imagens desempenham um papel central na experiênciado usuário ao navegar no site.

O volume de imagens servidas mensalmente é bastante alto(em torno de 9 TeraBytes).

Uma mesma imagem pode ter tamanhos diferentes, o quemultiplica sua quantidade (mais de 1 milhão de imagens apartir de 350 mil originais).

Page 4: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 4 Arquitetura de Banco de Dados

1. Introdução - Problemas

Armazenamento das imagens em servidores locais,alcançando o limite máximo de storage.

Gerenciador de cache instável, causando reinicializaçãodo sistema por estar sendo executado no mesmoservidor que o sistema principal.

Para diferentes tamanhos de imagens, era necessárioespaço em disco, fazendo o storage cresceraproximadamente quatro vezes ao número de anúnciosno site.

Page 5: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 5 Arquitetura de Banco de Dados

2. Objetivos

Superar a limitação de storage local de imagens.

Disponibilizar imagens em qualquer tamanho deforma mais eficiente.

Administrar o cache sem impactar diretamente osistema.

Page 6: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 6 Arquitetura de Banco de Dados

3. Arquitetura – Tecnologias utilizadas

Armazenamento na nuvem: Amazon S3 (Simple Storage Service)

Virtualização na nuvem: Amazon EC2

Processamento de imagens:

PHP + ImageMagick

Gerenciamento de Cache:

Nginx (cache em disco)

+ Varnish (cache em memória)

Page 7: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 7 Arquitetura de Banco de Dados

Banco de dados

Amazon S3

FIAP Carros APPCliente

Gerenciador de imagens

3. Arquitetura – Fluxo de Informação

Bus

car

imag

ens

FIAP App

Page 8: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 8 Arquitetura de Banco de Dados

3. Arquitetura – Requisição de Imagem

Amazon S3Cliente

FIAP carros APPBanco de dados

PHP App

Requisição

Varnish NginxSe existe, busca no S3

Se não, busca na aplicação

Servidor de imagens no EC2

FIAP App

Page 9: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 9 Arquitetura de Banco de Dados

4. Aspectos Positivos e Negativos

Positivos

Escalabilidade

Eliminação dos limites de armazenamento

Gerencia de cache mais eficiente

Negativos

Latência

Complexidade da tecnologia

Exigência de profissionais capacitados

Page 10: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 10 Arquitetura de Banco de Dados

5. Conclusões

O modelo tem se mostrado bem estável em relação ao desempenho e disponibilidade do serviço.

O controle do cache, por ter uma complexidade maior que o seu antecessor, exige uma atenção maior na implementação de novas funcionalidades.

Page 11: Imagens com Escalabilidade - Arquitetura de Dados

MBA em Arquitetura de Soluções 11 Arquitetura de Banco de Dados

Obrigado !