Iniciando o servidor Rails

Prévia grátis 2 min de leitura

Uma app gerada não faz nada até algo rodá-la

Rails CLI: rails new gerou uma app inteira: models, views, controllers e configuração, parados no disco. Nada disso faz coisa alguma ainda. Uma app Rails é só arquivos até um processo começar a ler requisições e rodar o código. Esse processo é o bin/rails server.

bin/rails server

Rodá-lo neste projeto imprime algo assim:

=> Booting Puma
=> Rails 8.1.4 application starting in development
=> Run `bin/rails server --help` for more startup options
Puma starting in single mode...
* Listening on http://127.0.0.1:3000

Três coisas aconteceram. O Rails subiu, carregando config/application.rb, os initializers e o resto. O Puma começou como o servidor web por baixo. E passou a escutar na porta 3000, a padrão. Abrir http://localhost:3000 num navegador agora chega a esse processo.

O Puma já foi mencionado, este curso vai mais fundo

A web: requisição-resposta citou o Puma como a primeira camada por onde uma requisição passa, a peça que recebe HTTP bruto e o entrega ao Rack. Aquele curso seguiu a jornada inteira da requisição. Este trata do Puma: como subi-lo, configurá-lo e o que "workers" e "threads" querem dizer na saída e na configuração dele.

Parando ele

Ctrl+C no terminal que roda o bin/rails server para o Puma e devolve você ao shell. Não há comando de parada separado; o servidor só roda enquanto aquele terminal o mantém em primeiro plano.

Pontos-chave

  • Uma app gerada fica parada até o bin/rails server subir o Puma, o processo que escuta requisições HTTP.
  • A saída de subida mostra que o Rails carregou, o Puma começou e está escutando, na porta 3000 por padrão.
  • A web: requisição-resposta cobriu a jornada inteira; este curso trata do próprio Puma.
  • Ctrl+C para o servidor, que só roda enquanto o processo do terminal vive.
Aula 1 de 7 · grátis

Continue com a aula 2

O que é o Puma, e por que não WEBrick?

Por que o WEBrick saiu das gems padrão do Ruby, a origem do Puma e sua adoção no Rails.

Com uma conta grátis você também tem os quizzes, seu progresso e suas anotações, e a discussão.

Digite para buscar...