SlideShare una empresa de Scribd logo
1 de 47
Ruby on Rails 100% na Cloud com
Heroku e outros serviços
Bruno Ghisi, Resultados Digitais
@brunogh




                      SECCOM 2012
Resultados Digitais
RD Station
"hrm, why use ruby when you
probably could have developed
this thing in less time with php?"

- comentário em um post do David Heinemeier Hansson sobre um Getting
Started em Ruby, 2004




                                               http://37signals.com/svn/archives/000606.php
1) Rápido

2) Boas práticas (ex: infra de
testes)

3) Comunidade (>2600
contribuidores, >45 mil gems)

                  http://contributors.rubyonrails.org | http://rubygems.org
2.3 milhões de usuários em 3.4 milhões de repositórios
(https://github.com/home)
estimado >500 milhões de usuários
(http://mashable.com/2012/02/22/twitters-500-million-user/e)
>150 milhões de usuários registrados (1/5 ativo)
(http://en.wikipedia.org/wiki/Groupon)
Basecamp/37 signals - 8 milhões de projetos
(http://basecamp.com/one-page-project)
Escolhi
minha
linguagem e
framework!
Vamos configurar o servidor!
Inspirado em
www.destroyallsoftware.com/talks/wa
Inspirado em
www.destroyallsoftware.com/talks/wa
Configurar
• Serviços, fine tunings, etc

Backup
• O que acontece em caso de problema?
• Qual ETA?

Segurança
• Updates?
• "li um tutorial aqui"

Deploy
• Como? Qto tempo?
• Ambiente de homologação?
Config, config, config &
Manutenção!
Foco no produto!
SaaS



PaaS



IaaS
SaaS



PaaS



IaaS
SaaS



PaaS



IaaS
Rapportive

Lançado em 2010 (Rails)

65 milhões de sidebar
lookups mensais

Comprado pelo LinkedIn
em 02/2012




                    http://success.heroku.com/
Web dyno X Worker X
Whatever
Rapportive

Lançado em 2010 (Rails)

65 milhões de sidebar
lookups mensais

50 web dynos e 15 workers

Comprado pelo LinkedIn em
02/2012

                    http://success.heroku.com/
Add-ons
SQL Database-as-a-Service

●
    Fork
●
    Follow
●
    Health checks
●
    Backups
Demo Contador Social
1) railswizard.org

2) Spike

3) Push
Have a Beer!
SaaS



PaaS



IaaS
Operação
Airbrake




Outras opções: Sentry, Exceptional
Outras opções: Papertrail, Logentries
Infra
Outras opções: Mailgun, Mandrill, CloudMailin
Dev
Outra opção: Railsonfire
Outros
RD Station - Marketing / CRM
Google Apps – Documentos / email
Dropbox - Arquivos
Basecamp - Projetos / Atividades
Github - Código
Chargify - Cobrança em SaaS
Zendesk - Suporte
Obrigado!




@brunogh
bruno.ghisi@ResultadosDigitais.com.br

Blog sobre Ruby/Rails: LoudCoding.com

Más contenido relacionado

Similar a Deploy Ruby on Rails na Cloud

Ruby on Ruby na Cloud com Heroku
Ruby on Ruby na Cloud com HerokuRuby on Ruby na Cloud com Heroku
Ruby on Ruby na Cloud com HerokuBruno Ghisi
 
Como um grande sistema REST funciona - arquitetura e desempenho
Como um grande sistema REST funciona - arquitetura e desempenhoComo um grande sistema REST funciona - arquitetura e desempenho
Como um grande sistema REST funciona - arquitetura e desempenhoDavid Robert Camargo de Campos
 
Drupal e o seu ecossistema
Drupal e o seu ecossistemaDrupal e o seu ecossistema
Drupal e o seu ecossistemaDrupal Portugal
 
Workshop Performance Rails
Workshop Performance RailsWorkshop Performance Rails
Workshop Performance RailsVitor Pellegrino
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Colóquio Drupal na Universidade do Minho
Colóquio Drupal na Universidade do MinhoColóquio Drupal na Universidade do Minho
Colóquio Drupal na Universidade do Minhointrofini
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaAri Stopassola Junior
 
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open Web
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open WebNovo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open Web
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open WebLeonardo Balter
 
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Renato Groff
 
Drupal 8: desenvolvendo fora da ilha
Drupal 8: desenvolvendo fora da ilhaDrupal 8: desenvolvendo fora da ilha
Drupal 8: desenvolvendo fora da ilhaLuiz Filho
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Luis Cipriani
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 
12 factor app. Melhor com Docker
12 factor app. Melhor com Docker12 factor app. Melhor com Docker
12 factor app. Melhor com DockerWellington Silva
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaCleber Dantas
 

Similar a Deploy Ruby on Rails na Cloud (20)

Ruby on Ruby na Cloud com Heroku
Ruby on Ruby na Cloud com HerokuRuby on Ruby na Cloud com Heroku
Ruby on Ruby na Cloud com Heroku
 
Como um grande sistema REST funciona - arquitetura e desempenho
Como um grande sistema REST funciona - arquitetura e desempenhoComo um grande sistema REST funciona - arquitetura e desempenho
Como um grande sistema REST funciona - arquitetura e desempenho
 
Drupal e o seu ecossistema
Drupal e o seu ecossistemaDrupal e o seu ecossistema
Drupal e o seu ecossistema
 
Netbeans Slides
Netbeans SlidesNetbeans Slides
Netbeans Slides
 
Workshop Performance Rails
Workshop Performance RailsWorkshop Performance Rails
Workshop Performance Rails
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Colóquio Drupal na Universidade do Minho
Colóquio Drupal na Universidade do MinhoColóquio Drupal na Universidade do Minho
Colóquio Drupal na Universidade do Minho
 
Minha Vida Fiap - Desenvolvimento
Minha Vida Fiap - DesenvolvimentoMinha Vida Fiap - Desenvolvimento
Minha Vida Fiap - Desenvolvimento
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na prática
 
NoSQL e Python
NoSQL e PythonNoSQL e Python
NoSQL e Python
 
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open Web
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open WebNovo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open Web
Novo Cinto de Utilidades do Desenvolvedor JavaScript, WebAPIs e Open Web
 
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
Desenvolvendo APIs seguras com ASP.NET Core, JWT, Docker e Azure Web App for ...
 
Internet sem drama
Internet sem dramaInternet sem drama
Internet sem drama
 
Drupal 8: desenvolvendo fora da ilha
Drupal 8: desenvolvendo fora da ilhaDrupal 8: desenvolvendo fora da ilha
Drupal 8: desenvolvendo fora da ilha
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
12 factor app. Melhor com Docker
12 factor app. Melhor com Docker12 factor app. Melhor com Docker
12 factor app. Melhor com Docker
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
 
Como um grande sistema REST funciona
Como um grande sistema REST funcionaComo um grande sistema REST funciona
Como um grande sistema REST funciona
 

Más de Bruno Ghisi

De programador a cto na sua startup
De programador a cto na sua startupDe programador a cto na sua startup
De programador a cto na sua startupBruno Ghisi
 
De programador a cto na sua startup
De programador a cto na sua startupDe programador a cto na sua startup
De programador a cto na sua startupBruno Ghisi
 
Qcon SP 2015 - Escalando times e salvando casamentos com continuous delivery
Qcon SP 2015 - Escalando times e salvando casamentos com continuous deliveryQcon SP 2015 - Escalando times e salvando casamentos com continuous delivery
Qcon SP 2015 - Escalando times e salvando casamentos com continuous deliveryBruno Ghisi
 
Palestra MIDI - Como o marketing digital pode melhorar o seu funil de vendas
Palestra MIDI  - Como o marketing digital pode melhorar o seu funil de vendasPalestra MIDI  - Como o marketing digital pode melhorar o seu funil de vendas
Palestra MIDI - Como o marketing digital pode melhorar o seu funil de vendasBruno Ghisi
 
Agile Brazil 2014 - Case RD Station: escalando agile e lean na gestão compl...
Agile Brazil 2014  - Case RD Station: escalando agile e lean na gestão compl...Agile Brazil 2014  - Case RD Station: escalando agile e lean na gestão compl...
Agile Brazil 2014 - Case RD Station: escalando agile e lean na gestão compl...Bruno Ghisi
 
GURU-SC: Case RD Station
GURU-SC: Case RD StationGURU-SC: Case RD Station
GURU-SC: Case RD StationBruno Ghisi
 
Ginga - OpenTDC 2009
Ginga - OpenTDC 2009Ginga - OpenTDC 2009
Ginga - OpenTDC 2009Bruno Ghisi
 
Ginga - Solisc 2010
Ginga - Solisc 2010Ginga - Solisc 2010
Ginga - Solisc 2010Bruno Ghisi
 
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011Bruno Ghisi
 
TDC 2010 Florianópolis - Ginga
TDC 2010 Florianópolis - GingaTDC 2010 Florianópolis - Ginga
TDC 2010 Florianópolis - GingaBruno Ghisi
 
SuggesTV - webmedia 2011
SuggesTV - webmedia 2011SuggesTV - webmedia 2011
SuggesTV - webmedia 2011Bruno Ghisi
 

Más de Bruno Ghisi (11)

De programador a cto na sua startup
De programador a cto na sua startupDe programador a cto na sua startup
De programador a cto na sua startup
 
De programador a cto na sua startup
De programador a cto na sua startupDe programador a cto na sua startup
De programador a cto na sua startup
 
Qcon SP 2015 - Escalando times e salvando casamentos com continuous delivery
Qcon SP 2015 - Escalando times e salvando casamentos com continuous deliveryQcon SP 2015 - Escalando times e salvando casamentos com continuous delivery
Qcon SP 2015 - Escalando times e salvando casamentos com continuous delivery
 
Palestra MIDI - Como o marketing digital pode melhorar o seu funil de vendas
Palestra MIDI  - Como o marketing digital pode melhorar o seu funil de vendasPalestra MIDI  - Como o marketing digital pode melhorar o seu funil de vendas
Palestra MIDI - Como o marketing digital pode melhorar o seu funil de vendas
 
Agile Brazil 2014 - Case RD Station: escalando agile e lean na gestão compl...
Agile Brazil 2014  - Case RD Station: escalando agile e lean na gestão compl...Agile Brazil 2014  - Case RD Station: escalando agile e lean na gestão compl...
Agile Brazil 2014 - Case RD Station: escalando agile e lean na gestão compl...
 
GURU-SC: Case RD Station
GURU-SC: Case RD StationGURU-SC: Case RD Station
GURU-SC: Case RD Station
 
Ginga - OpenTDC 2009
Ginga - OpenTDC 2009Ginga - OpenTDC 2009
Ginga - OpenTDC 2009
 
Ginga - Solisc 2010
Ginga - Solisc 2010Ginga - Solisc 2010
Ginga - Solisc 2010
 
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011
Implementando LWUIT para TV Digital (Ginga-J) - JavaOne 2011
 
TDC 2010 Florianópolis - Ginga
TDC 2010 Florianópolis - GingaTDC 2010 Florianópolis - Ginga
TDC 2010 Florianópolis - Ginga
 
SuggesTV - webmedia 2011
SuggesTV - webmedia 2011SuggesTV - webmedia 2011
SuggesTV - webmedia 2011
 

Deploy Ruby on Rails na Cloud

Notas del editor

  1. Startup Marketing digital de resultado Materiais gratuitos, blog Mas o que marketing tem a ver com tecnologia e SECCOM?
  2. 200 contas de empresa SEO, email marketing, monitoramento, social, landing pages, CRM, etc SaaS Ruby on Rails
  3. Achei este comentário eqto fazia a palestra David Hansson é o criador do Rails Por que Ruby e Rails?
  4. José Valim (Brasil) é o maior contribuidor
  5. Twitter teve que mudar... - Ótimo, isto significa que ele cresceu! - Qtas empresas vao ser iguais ao twitter?
  6. Quem já comprou no Groupon e não conseguiu reservar ou a porção veio menor?
  7. Como assim configurar o servidor? Nao faz sentido
  8. Se vc ainda não está confiante que são mtas configs, isto é apenas a ponta do iceberg
  9. Devs (principalmente os mais jovens) as vezes acham que tudo é rapido, mas esquecem desta palavra
  10. Para uma startups, tempo e priorização é mto importante Precisamos “ganhar tempo”
  11. Infra -> Amazon PaaS -> OpenShift, App Engine, Engine Yard, etc SaaS ->
  12. Tipos de processos Web demora 30 segundos Qto mais rapido, menos dynos, mais barato Processo em background (assync)
  13. Extensoes poderosas > 100 API p fazer servicos Mtos rodam na amazon
  14. Apagar index Instalar gem socialcount Instalar pg group :production, :staging do gem 'pg' end group :development, :test do gem 'sqlite3' End SocialCount.new.query Bundle install
  15. Filtrar problemas criticos Atacar recorrentes
  16. Se pudesse mandar usar algo, seria isto Temos mtas integracoes
  17. Requisitos de negócio que precisa estar disponivel