Normalement, lorsque vous exécutez Rails server
ça démarre Webrick. Si vous installez la gemme "mince", alors "mince" commence à la place. Je voudrais faire la même chose avec le serveur 'puma'.
Je vois que la commande start
dans railties (lib/Rails/commandes) appelle super, mais je ne trouve pas quelles sont les différentes options pour 'super'. J'ai également passé en revue de nombreuses références à Rails dans 'thin').
J'ai trouvé une entrée du journal des modifications intitulée "Ajout d'un support léger au script/serveur. # 488 [Bob Klosinski]" à partir d'octobre 2008, mais cette zone de code a considérablement changé depuis cette validation (a93ea88c0623b4f65af98c0eb55924c335bb3ac1).
Si quelqu'un pouvait me diriger vers la bonne section de code, ce serait très utile.
Après quelques recherches, j'ai trouvé cette réponse: https://stackoverflow.com/a/14911994/604526
Pour faire de Puma la valeur par défaut, collez ce code dans le script/Rails ci-dessus nécessite "Rails/commandes":
require 'rack/handler'
Rack::Handler::WEBrick = Rack::Handler.get(:puma)
Puma est désormais le serveur par défaut si vous utilisez Rails s
Rails s
=> Booting Puma
=> Rails 3.2.12 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Connecting to database specified by database.yml
Puma 1.6.3 starting...
* Min threads: 0, max threads: 16
* Environment: development
* Listening on tcp://0.0.0.0:3000
Avec Rails 4 vous devez simplement ajouter le puma-gem au Gemfile. (Testé avec Rails 4.0.2 et Puma 2.6.0)
Au moins dans Rails 4, il vous suffit d'ajouter les éléments suivants à votre Gemfile
gem 'puma'
puis exécutez "bundle", puis lorsque vous exécutez "serveur Rails" et Puma sera utilisé.
Cela fonctionne pour moi. Ruby 2.0.0 Rails 3.2.13 Puma 1.6.3
Rails s puma
documentation Puma suggère que vous ajoutiez #\ -s puma
à ton config.ru
.