41
Escalabilidade Augusto Pascutti Guia do mochileiro para na Web PHP Conference Brasil 2013 1 Sunday, December 1, 13

Guia do mochileiro para escalabilidade

Embed Size (px)

DESCRIPTION

Escalabilidade em um sistema é planejada desde a sua concepção ou as consequências deverão ser aceitas. Como entender a arquitetura de uma aplicação web, como usar essa arquitetura a seu favor e quais são as práticas mais comuns será o conteúdo dessa palestra. Nada de teoria, você leva pra casa um conjunto de VMs pra exprimentar e aprender o que foi apresentado.

Citation preview

Page 1: Guia do mochileiro para escalabilidade

Escalabilidade

Augusto Pascutti

Guia do mochileiro para

na Web

PHP Conference Brasil 2013

1Sunday, December 1, 13

Page 2: Guia do mochileiro para escalabilidade

Agenda

★O que é escalabilidade

★A arquitetura da web

★Escalando sua aplicação

2Sunday, December 1, 13

Page 3: Guia do mochileiro para escalabilidade

O que é escalabilidade?

3Sunday, December 1, 13

Page 4: Guia do mochileiro para escalabilidade

“É a habilidade de um processo suportar uma demanda

crescente de trabalho. De forma sustentável.”

4Sunday, December 1, 13

Page 5: Guia do mochileiro para escalabilidade

Fácil de confundir com performance.

5Sunday, December 1, 13

Page 6: Guia do mochileiro para escalabilidade

Trabalho________

Tempo

Performance =

6Sunday, December 1, 13

Page 7: Guia do mochileiro para escalabilidade

Trabalho________

Recurso

Escalabilidade ~=

7Sunday, December 1, 13

Page 8: Guia do mochileiro para escalabilidade

O problema da escalabilidade.

8Sunday, December 1, 13

Page 9: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

9Sunday, December 1, 13

Page 10: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

Processador

10Sunday, December 1, 13

Page 11: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

ProcessadorRAM

11Sunday, December 1, 13

Page 12: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

ProcessadorRAMRede

12Sunday, December 1, 13

Page 13: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

ProcessadorRAMRedeDisco

13Sunday, December 1, 13

Page 14: Guia do mochileiro para escalabilidade

Todo recurso tem um limite.

ProcessadorRAMRedeDiscoDinheiro

14Sunday, December 1, 13

Page 15: Guia do mochileiro para escalabilidade

Um sistema só escala se arquitetado com este

objetivo.

15Sunday, December 1, 13

Page 16: Guia do mochileiro para escalabilidade

A arquitetura da web

16Sunday, December 1, 13

Page 17: Guia do mochileiro para escalabilidade

Frontend+

Backend

17Sunday, December 1, 13

Page 18: Guia do mochileiro para escalabilidade

FrontCliente+

BackServidor

18Sunday, December 1, 13

Page 19: Guia do mochileiro para escalabilidade

Front+

Back

19Sunday, December 1, 13

Page 20: Guia do mochileiro para escalabilidade

Front+

Back

20Sunday, December 1, 13

Page 21: Guia do mochileiro para escalabilidade

Front+

Back

21Sunday, December 1, 13

Page 22: Guia do mochileiro para escalabilidade

Front+

Back

Comunicacão

22Sunday, December 1, 13

Page 23: Guia do mochileiro para escalabilidade

Front+

Back

ComunicacãoHTTP

23Sunday, December 1, 13

Page 24: Guia do mochileiro para escalabilidade

Front+

Back

ComunicacãoHTTPTCP/IP

24Sunday, December 1, 13

Page 25: Guia do mochileiro para escalabilidade

Front+

Back

25Sunday, December 1, 13

Page 26: Guia do mochileiro para escalabilidade

Front+

Back

Solicita

26Sunday, December 1, 13

Page 27: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScript

27Sunday, December 1, 13

Page 28: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScriptCSS

28Sunday, December 1, 13

Page 29: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScriptCSSImagem

29Sunday, December 1, 13

Page 30: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScriptCSSImagemHTML

30Sunday, December 1, 13

Page 31: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScriptCSSImagemHTMLVídeo

31Sunday, December 1, 13

Page 32: Guia do mochileiro para escalabilidade

Front+

Back

SolicitaJavaScriptCSSImagemHTMLVídeoSom

32Sunday, December 1, 13

Page 33: Guia do mochileiro para escalabilidade

Front+

Back

33Sunday, December 1, 13

Page 34: Guia do mochileiro para escalabilidade

Front+

Back

Responde

34Sunday, December 1, 13

Page 35: Guia do mochileiro para escalabilidade

Front+

Back

RespondePersiste

35Sunday, December 1, 13

Page 36: Guia do mochileiro para escalabilidade

Escalando sua aplicação

36Sunday, December 1, 13

Page 37: Guia do mochileiro para escalabilidade

Cliente

★Cache para evitar responder solicitações

37Sunday, December 1, 13

Page 38: Guia do mochileiro para escalabilidade

HTTP

★Cabeçalhos para cache

★Bom design the URIs

★Utilização de métodos apropriados

★Status das respostas

38Sunday, December 1, 13

Page 39: Guia do mochileiro para escalabilidade

Servidor

★Use cache para o que for lento

★Otimize o possível, quando for um problema

★Cuidado com o estado

★Distribua e entenda o CAP Theorem

39Sunday, December 1, 13

Page 40: Guia do mochileiro para escalabilidade

?

40Sunday, December 1, 13