Guia do mochileiro para escalabilidade

Preview:

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

Escalabilidade

Augusto Pascutti

Guia do mochileiro para

na Web

PHP Conference Brasil 2013

1Sunday, December 1, 13

Agenda

★O que é escalabilidade

★A arquitetura da web

★Escalando sua aplicação

2Sunday, December 1, 13

O que é escalabilidade?

3Sunday, December 1, 13

“É a habilidade de um processo suportar uma demanda

crescente de trabalho. De forma sustentável.”

4Sunday, December 1, 13

Fácil de confundir com performance.

5Sunday, December 1, 13

Trabalho________

Tempo

Performance =

6Sunday, December 1, 13

Trabalho________

Recurso

Escalabilidade ~=

7Sunday, December 1, 13

O problema da escalabilidade.

8Sunday, December 1, 13

Todo recurso tem um limite.

9Sunday, December 1, 13

Todo recurso tem um limite.

Processador

10Sunday, December 1, 13

Todo recurso tem um limite.

ProcessadorRAM

11Sunday, December 1, 13

Todo recurso tem um limite.

ProcessadorRAMRede

12Sunday, December 1, 13

Todo recurso tem um limite.

ProcessadorRAMRedeDisco

13Sunday, December 1, 13

Todo recurso tem um limite.

ProcessadorRAMRedeDiscoDinheiro

14Sunday, December 1, 13

Um sistema só escala se arquitetado com este

objetivo.

15Sunday, December 1, 13

A arquitetura da web

16Sunday, December 1, 13

Frontend+

Backend

17Sunday, December 1, 13

FrontCliente+

BackServidor

18Sunday, December 1, 13

Front+

Back

19Sunday, December 1, 13

Front+

Back

20Sunday, December 1, 13

Front+

Back

21Sunday, December 1, 13

Front+

Back

Comunicacão

22Sunday, December 1, 13

Front+

Back

ComunicacãoHTTP

23Sunday, December 1, 13

Front+

Back

ComunicacãoHTTPTCP/IP

24Sunday, December 1, 13

Front+

Back

25Sunday, December 1, 13

Front+

Back

Solicita

26Sunday, December 1, 13

Front+

Back

SolicitaJavaScript

27Sunday, December 1, 13

Front+

Back

SolicitaJavaScriptCSS

28Sunday, December 1, 13

Front+

Back

SolicitaJavaScriptCSSImagem

29Sunday, December 1, 13

Front+

Back

SolicitaJavaScriptCSSImagemHTML

30Sunday, December 1, 13

Front+

Back

SolicitaJavaScriptCSSImagemHTMLVídeo

31Sunday, December 1, 13

Front+

Back

SolicitaJavaScriptCSSImagemHTMLVídeoSom

32Sunday, December 1, 13

Front+

Back

33Sunday, December 1, 13

Front+

Back

Responde

34Sunday, December 1, 13

Front+

Back

RespondePersiste

35Sunday, December 1, 13

Escalando sua aplicação

36Sunday, December 1, 13

Cliente

★Cache para evitar responder solicitações

37Sunday, December 1, 13

HTTP

★Cabeçalhos para cache

★Bom design the URIs

★Utilização de métodos apropriados

★Status das respostas

38Sunday, December 1, 13

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

?

40Sunday, December 1, 13

Recommended