Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Batch
                Escalando um
                 sistema sem
                  “fermento”


                           ...
Batch?



                                    2

terça-feira, 1 de junho de 2010
pão?
                                   3

terça-feira, 1 de junho de 2010
lucro?
                                    4

terça-feira, 1 de junho de 2010
demanda
                                     5

terça-feira, 1 de junho de 2010
mais pão?
                                      6

terça-feira, 1 de junho de 2010
mais lucro?
                                       7

terça-feira, 1 de junho de 2010
mas....



                                     8

terça-feira, 1 de junho de 2010
isso escala?
                                       9

terça-feira, 1 de junho de 2010
NO
terça-feira, 1 de junho de 2010
11

terça-feira, 1 de junho de 2010
#comofaz?
                                      11

terça-feira, 1 de junho de 2010
padoca?
                                     12

terça-feira, 1 de junho de 2010
mais lucro?
                                       13

terça-feira, 1 de junho de 2010
e daí?



                                    14

terça-feira, 1 de junho de 2010
fazer software



                                        15

terça-feira, 1 de junho de 2010
é tão artesanal quanto



                                  16

terça-feira, 1 de junho de 2010
fazer pão



                                      17

terça-feira, 1 de junho de 2010
e daí?
                                    18

terça-feira, 1 de junho de 2010
portal do pão
                                        19

terça-feira, 1 de junho de 2010
ruby, obviamente



                                     20

terça-feira, 1 de junho de 2010
portal do pão




                                        21

terça-feira, 1 de junho de 2010
portal do pão

                    • fotos de pão caseiro




                                             21

terça-feira...
portal do pão

                    • fotos de pão caseiro
                    • produtos para fazer
                      ...
portal do pão

                    • fotos de pão caseiro
                    • produtos para fazer
                      ...
portal do pão

                    • fotos de pão caseiro
                    • produtos para fazer
                      ...
portal do pão

                    • fotos de pão caseiro
                    • produtos para fazer
                      ...
caiu na rede
                                       22

terça-feira, 1 de junho de 2010
acessos / m




                            volume de acessos
                                     23

terça-feira, 1 de j...
200


                                  150


                                  100


                                  50...
200


                                  150


                                  100


                                  50...
200


                                  150


                                  100


                                  50...
200


                                  150


                                  100


                                  50...
200
                                                                    200

                                  150


     ...
200
                                                                    200

                                  150


     ...
R.I.P.
                                    24

terça-feira, 1 de junho de 2010
soluções!



                                      25

terça-feira, 1 de junho de 2010
problemas de banco?



                                  26

terça-feira, 1 de junho de 2010
problemas de banco?
                                  DBA.current_dba.kill!




                                          ...
problemas de banco?
                                  DBA.current_dba.kill!
                                    dba = DBA....
problemas de banco?
                                  DBA.current_dba.kill!
                                     dba = DBA...
problemas de infra?




                                  27

terça-feira, 1 de junho de 2010
problemas de infra?




                          torrar grana pra aliviar consciência
                                   ...
problemas no código?



                                  28

terça-feira, 1 de junho de 2010
NO
terça-feira, 1 de junho de 2010
architecture fail
                                          30

terça-feira, 1 de junho de 2010
caffeine fail
                                        31

terça-feira, 1 de junho de 2010
no desespero...
                                         32

terça-feira, 1 de junho de 2010
consultoria [A-Z]{3}
                                  33

terça-feira, 1 de junho de 2010
qual era o problema mesmo?


                                              34

terça-feira, 1 de junho de 2010
qual era o problema
                             mesmo?


                                  35

terça-feira, 1 de junho de...
investigando o problema
                                  36

terça-feira, 1 de junho de 2010
37

terça-feira, 1 de junho de 2010
upload de imagens?



                                  37

terça-feira, 1 de junho de 2010
imagemagick



                                       38

terça-feira, 1 de junho de 2010
o usuário precisa
                  mesmo ver a imagem
                       na hora?

                                  ...
NO
terça-feira, 1 de junho de 2010
DJ



                                  41

terça-feira, 1 de junho de 2010
DJ - Vantagens


                    • Excelente documentação e tutoriais
                    • Suporta prioridades
      ...
DJ - Desvantagens




                                          43

terça-feira, 1 de junho de 2010
DJ - Desvantagens


                    • Depende de ActiveRecord, mas
                            suporta backend MongoMa...
DJ - Desvantagens


                    • Depende de ActiveRecord, mas
                            suporta backend MongoMa...
DJ - Desvantagens


                    • Depende de ActiveRecord, mas
                            suporta backend MongoMa...
DJ - Detalhes


                    • sinatra-dj
                    • imcompatível com rails < 2.2
                    • ...
DJ
                                  45

terça-feira, 1 de junho de 2010
DJ
                                  46

terça-feira, 1 de junho de 2010
resolvendo o
                                    problema


                                       47

terça-feira, 1 de j...
delayed_paperclip!
                                  48

terça-feira, 1 de junho de 2010
delayed_paperclip
                                     49

terça-feira, 1 de junho de 2010
upload de vídeo?



                                         50

terça-feira, 1 de junho de 2010
o usuário precisa
                       esperar até o fim da
                           conversão?

                      ...
NO
terça-feira, 1 de junho de 2010
BJ



                                  53

terça-feira, 1 de junho de 2010
BJ - Vantagens




                                        54

terça-feira, 1 de junho de 2010
BJ - Vantagens
                    • Simples e Robusta




                                        54

terça-feira, 1 de j...
BJ - Vantagens
                    • Simples e Robusta
                    • Instalação fácil




                        ...
BJ - Vantagens
                    • Simples e Robusta
                    • Instalação fácil
                    • Curva ...
BJ - Vantagens
                    • Simples e Robusta
                    • Instalação fácil
                    • Curva ...
BJ - Vantagens
                    • Simples e Robusta
                    • Instalação fácil
                    • Curva ...
BJ - Vantagens
                    • Simples e Robusta
                    • Instalação fácil
                    • Curva ...
BJ - Desvantagens




                                          55

terça-feira, 1 de junho de 2010
BJ - Desvantagens


                    • Execução serial




                                          55

terça-feira, 1...
BJ - Desvantagens


                    • Execução serial
                    • Dependente de ActiveRecord




           ...
BJ - Desvantagens


                    • Execução serial
                    • Dependente de ActiveRecord
               ...
BJ
                                  56

terça-feira, 1 de junho de 2010
resolvendo o
                                    problema


                                       57

terça-feira, 1 de j...
BJ
                                  58

terça-feira, 1 de junho de 2010
fácil, não?



                                       59

terça-feira, 1 de junho de 2010
aquele relatório
                                      insano
                                      #medo

               ...
precisa ser “online”?



                                  61

terça-feira, 1 de junho de 2010
NO
terça-feira, 1 de junho de 2010
resque
                 dj on steroids




                                   63

terça-feira, 1 de junho de 2010
resque


                    • persistente
                    • interface de administração
                    • rápido!!...
resque-web
                                      65

terça-feira, 1 de junho de 2010
let’s batch!



                                       66

terça-feira, 1 de junho de 2010
e daí?



                                    67

terça-feira, 1 de junho de 2010
feedback

                    • ajax
                    • email
                    • impedir de agendar diversas vezes a...
monitoramento
                                    porque, afinal, ...




                                            69

t...
...se não cuidar...
                                           70

terça-feira, 1 de junho de 2010
...já viu né...
                                         71

terça-feira, 1 de junho de 2010
Monitoramento


                    • Monit
                    • God
                    • Munin


                      ...
cases



                    • AutoSEG
                    • github



                                    73

terça-feira...
obrigado!
                             @qmx => http://qmx.me
                      @scalone => http://twitter.com/scalone
...
Fotos

                                                                                      Thanks creative commons!
    ...
Nächste SlideShare
Wird geladen in …5
×

batch - escalando um sistema sem fermento

2.562 Aufrufe

Veröffentlicht am

Batch - escalando um sistema sem fermento

palestra apresentada por mim (@qmx) e pelo @scalone no #rubyreal2010

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

batch - escalando um sistema sem fermento

  1. 1. Batch Escalando um sistema sem “fermento” @qmx @scalone 1 terça-feira, 1 de junho de 2010
  2. 2. Batch? 2 terça-feira, 1 de junho de 2010
  3. 3. pão? 3 terça-feira, 1 de junho de 2010
  4. 4. lucro? 4 terça-feira, 1 de junho de 2010
  5. 5. demanda 5 terça-feira, 1 de junho de 2010
  6. 6. mais pão? 6 terça-feira, 1 de junho de 2010
  7. 7. mais lucro? 7 terça-feira, 1 de junho de 2010
  8. 8. mas.... 8 terça-feira, 1 de junho de 2010
  9. 9. isso escala? 9 terça-feira, 1 de junho de 2010
  10. 10. NO terça-feira, 1 de junho de 2010
  11. 11. 11 terça-feira, 1 de junho de 2010
  12. 12. #comofaz? 11 terça-feira, 1 de junho de 2010
  13. 13. padoca? 12 terça-feira, 1 de junho de 2010
  14. 14. mais lucro? 13 terça-feira, 1 de junho de 2010
  15. 15. e daí? 14 terça-feira, 1 de junho de 2010
  16. 16. fazer software 15 terça-feira, 1 de junho de 2010
  17. 17. é tão artesanal quanto 16 terça-feira, 1 de junho de 2010
  18. 18. fazer pão 17 terça-feira, 1 de junho de 2010
  19. 19. e daí? 18 terça-feira, 1 de junho de 2010
  20. 20. portal do pão 19 terça-feira, 1 de junho de 2010
  21. 21. ruby, obviamente 20 terça-feira, 1 de junho de 2010
  22. 22. portal do pão 21 terça-feira, 1 de junho de 2010
  23. 23. portal do pão • fotos de pão caseiro 21 terça-feira, 1 de junho de 2010
  24. 24. portal do pão • fotos de pão caseiro • produtos para fazer pão 21 terça-feira, 1 de junho de 2010
  25. 25. portal do pão • fotos de pão caseiro • produtos para fazer pão • receitas de pão 21 terça-feira, 1 de junho de 2010
  26. 26. portal do pão • fotos de pão caseiro • produtos para fazer pão • receitas de pão • comunidade 21 terça-feira, 1 de junho de 2010
  27. 27. portal do pão • fotos de pão caseiro • produtos para fazer pão • receitas de pão • comunidade • pão opensource? 21 terça-feira, 1 de junho de 2010
  28. 28. caiu na rede 22 terça-feira, 1 de junho de 2010
  29. 29. acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  30. 30. 200 150 100 50 0 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  31. 31. 200 150 100 50 0 1 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  32. 32. 200 150 100 50 0 1 1 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  33. 33. 200 150 100 50 0 10 1 1 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  34. 34. 200 200 150 100 50 0 10 1 1 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  35. 35. 200 200 150 100 50 0 10 1 1 0 10h 12h 14h 16h 18h acessos / m volume de acessos 23 terça-feira, 1 de junho de 2010
  36. 36. R.I.P. 24 terça-feira, 1 de junho de 2010
  37. 37. soluções! 25 terça-feira, 1 de junho de 2010
  38. 38. problemas de banco? 26 terça-feira, 1 de junho de 2010
  39. 39. problemas de banco? DBA.current_dba.kill! 26 terça-feira, 1 de junho de 2010
  40. 40. problemas de banco? DBA.current_dba.kill! dba = DBA.new 26 terça-feira, 1 de junho de 2010
  41. 41. problemas de banco? DBA.current_dba.kill! dba = DBA.new dba.acts_as_jedi 26 terça-feira, 1 de junho de 2010
  42. 42. problemas de infra? 27 terça-feira, 1 de junho de 2010
  43. 43. problemas de infra? torrar grana pra aliviar consciência 27 terça-feira, 1 de junho de 2010
  44. 44. problemas no código? 28 terça-feira, 1 de junho de 2010
  45. 45. NO terça-feira, 1 de junho de 2010
  46. 46. architecture fail 30 terça-feira, 1 de junho de 2010
  47. 47. caffeine fail 31 terça-feira, 1 de junho de 2010
  48. 48. no desespero... 32 terça-feira, 1 de junho de 2010
  49. 49. consultoria [A-Z]{3} 33 terça-feira, 1 de junho de 2010
  50. 50. qual era o problema mesmo? 34 terça-feira, 1 de junho de 2010
  51. 51. qual era o problema mesmo? 35 terça-feira, 1 de junho de 2010
  52. 52. investigando o problema 36 terça-feira, 1 de junho de 2010
  53. 53. 37 terça-feira, 1 de junho de 2010
  54. 54. upload de imagens? 37 terça-feira, 1 de junho de 2010
  55. 55. imagemagick 38 terça-feira, 1 de junho de 2010
  56. 56. o usuário precisa mesmo ver a imagem na hora? 39 terça-feira, 1 de junho de 2010
  57. 57. NO terça-feira, 1 de junho de 2010
  58. 58. DJ 41 terça-feira, 1 de junho de 2010
  59. 59. DJ - Vantagens • Excelente documentação e tutoriais • Suporta prioridades • Curva de aprendizado baixa • Múltiplos Workers 42 terça-feira, 1 de junho de 2010
  60. 60. DJ - Desvantagens 43 terça-feira, 1 de junho de 2010
  61. 61. DJ - Desvantagens • Depende de ActiveRecord, mas suporta backend MongoMapper 43 terça-feira, 1 de junho de 2010
  62. 62. DJ - Desvantagens • Depende de ActiveRecord, mas suporta backend MongoMapper • Delayed Job usa UTC, cuidado 43 terça-feira, 1 de junho de 2010
  63. 63. DJ - Desvantagens • Depende de ActiveRecord, mas suporta backend MongoMapper • Delayed Job usa UTC, cuidado • Engessado em tarefas rake 43 terça-feira, 1 de junho de 2010
  64. 64. DJ - Detalhes • sinatra-dj • imcompatível com rails < 2.2 • usa daemon ou worker(s) 44 terça-feira, 1 de junho de 2010
  65. 65. DJ 45 terça-feira, 1 de junho de 2010
  66. 66. DJ 46 terça-feira, 1 de junho de 2010
  67. 67. resolvendo o problema 47 terça-feira, 1 de junho de 2010
  68. 68. delayed_paperclip! 48 terça-feira, 1 de junho de 2010
  69. 69. delayed_paperclip 49 terça-feira, 1 de junho de 2010
  70. 70. upload de vídeo? 50 terça-feira, 1 de junho de 2010
  71. 71. o usuário precisa esperar até o fim da conversão? 51 terça-feira, 1 de junho de 2010
  72. 72. NO terça-feira, 1 de junho de 2010
  73. 73. BJ 53 terça-feira, 1 de junho de 2010
  74. 74. BJ - Vantagens 54 terça-feira, 1 de junho de 2010
  75. 75. BJ - Vantagens • Simples e Robusta 54 terça-feira, 1 de junho de 2010
  76. 76. BJ - Vantagens • Simples e Robusta • Instalação fácil 54 terça-feira, 1 de junho de 2010
  77. 77. BJ - Vantagens • Simples e Robusta • Instalação fácil • Curva de aprendizado baixa 54 terça-feira, 1 de junho de 2010
  78. 78. BJ - Vantagens • Simples e Robusta • Instalação fácil • Curva de aprendizado baixa • Ambiente de execução no nível do SO (syscall) 54 terça-feira, 1 de junho de 2010
  79. 79. BJ - Vantagens • Simples e Robusta • Instalação fácil • Curva de aprendizado baixa • Ambiente de execução no nível do SO (syscall) • Suporta níveis de prioridade 54 terça-feira, 1 de junho de 2010
  80. 80. BJ - Vantagens • Simples e Robusta • Instalação fácil • Curva de aprendizado baixa • Ambiente de execução no nível do SO (syscall) • Suporta níveis de prioridade • Roda no windows, acredite! 54 terça-feira, 1 de junho de 2010
  81. 81. BJ - Desvantagens 55 terça-feira, 1 de junho de 2010
  82. 82. BJ - Desvantagens • Execução serial 55 terça-feira, 1 de junho de 2010
  83. 83. BJ - Desvantagens • Execução serial • Dependente de ActiveRecord 55 terça-feira, 1 de junho de 2010
  84. 84. BJ - Desvantagens • Execução serial • Dependente de ActiveRecord • Documentação, que documentação? 55 terça-feira, 1 de junho de 2010
  85. 85. BJ 56 terça-feira, 1 de junho de 2010
  86. 86. resolvendo o problema 57 terça-feira, 1 de junho de 2010
  87. 87. BJ 58 terça-feira, 1 de junho de 2010
  88. 88. fácil, não? 59 terça-feira, 1 de junho de 2010
  89. 89. aquele relatório insano #medo 60 terça-feira, 1 de junho de 2010
  90. 90. precisa ser “online”? 61 terça-feira, 1 de junho de 2010
  91. 91. NO terça-feira, 1 de junho de 2010
  92. 92. resque dj on steroids 63 terça-feira, 1 de junho de 2010
  93. 93. resque • persistente • interface de administração • rápido!!! 64 terça-feira, 1 de junho de 2010
  94. 94. resque-web 65 terça-feira, 1 de junho de 2010
  95. 95. let’s batch! 66 terça-feira, 1 de junho de 2010
  96. 96. e daí? 67 terça-feira, 1 de junho de 2010
  97. 97. feedback • ajax • email • impedir de agendar diversas vezes a mesma tarefa • comet / websockets 68 terça-feira, 1 de junho de 2010
  98. 98. monitoramento porque, afinal, ... 69 terça-feira, 1 de junho de 2010
  99. 99. ...se não cuidar... 70 terça-feira, 1 de junho de 2010
  100. 100. ...já viu né... 71 terça-feira, 1 de junho de 2010
  101. 101. Monitoramento • Monit • God • Munin 72 terça-feira, 1 de junho de 2010
  102. 102. cases • AutoSEG • github 73 terça-feira, 1 de junho de 2010
  103. 103. obrigado! @qmx => http://qmx.me @scalone => http://twitter.com/scalone 74 terça-feira, 1 de junho de 2010
  104. 104. Fotos Thanks creative commons! http://www.flickr.com/photos/akshaydavis/186598700/sizes/o/ http://www.flickr.com/photos/snidely7/4374153874/sizes/o/ http://www.flickr.com/photos/clocky/2660785933/sizes/o/ http://hrblogatresearchvoice.files.wordpress.com/2009/05/borat1.jpg http://www.flickr.com/photos/wheatfields/3673314570/sizes/o/ http://www.flickr.com/photos/daffyduke/2872752836/sizes/o/in/ set-72157607388359306/ http://www.flickr.com/photos/daffyduke/2872753092/sizes/o/in/ set-72157607388359306/ http://www.flickr.com/photos/daffyduke/2871921629/sizes/l/in/ set-72157607388359306/ http://www.flickr.com/photos/daffyduke/2872749786/sizes/o/in/ set-72157607388359306/ http://www.flickr.com/photos/kevinkemmerer/2998086908/sizes/l/ http://www.flickr.com/photos/bibliona/538164298/sizes/o/in/ photostream/ http://www.flickr.com/photos/jonmarulanda/3736708170/sizes/o/ http://www.flickr.com/photos/dirgon/446839052/sizes/o/ http://www.flickr.com/photos/miemo/210258035/sizes/l/ http://www.flickr.com/photos/m4tik/47714548/sizes/o/ http://www.flickr.com/photos/muehlinghaus/235334412/sizes/l/ http://www.flickr.com/photos/abusx/2181644630/sizes/l/ http://www.flickr.com/photos/arthur-caranta/2925352521/sizes/l/ http://www.flickr.com/photos/paulobrandao/2670585467/sizes/o/ 75 terça-feira, 1 de junho de 2010

×