Enterprise Hosting    Workshop  Ruby on Rails Application Server                Julian Fischer         fischer@enterprise-...
Ruby/RACK/RailsApplication Server
Application Server     Übersicht
Application Server               @railshoster
Application Server       Thin
Thin       @railshoster
Thin‣ Verwendet den Mongrel Parser.                 @railshoster
Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf.                  @railshoster
Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf.‣ Vollständig RACK kompatibel.                  @railshoster
Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf.‣ Vollständig RACK kompatibel.‣ Serviert nur eine einzelne...
Thin       @railshoster
Thin‣ Es müssen mehrere Thin-Instanzen auf mehren Ports betrieben werden.                 @railshoster
Thin‣ Es müssen mehrere Thin-Instanzen auf  mehren Ports betrieben werden.‣ Einwenn nur ein App-Server vorhandenbenötigt. ...
Thin‣ Es müssen mehrere Thin-Instanzen auf  mehren Ports betrieben werden.‣ Einwenn nur ein App-Server vorhandenbenötigt. ...
Application Server      Monit
Application Server               @railshoster
Application ServerMonit               @railshoster
http://mmonit.com/monit/
Eignet sich auch für das aktive,   eingreifende Monitoring    vieler andere Prozesse,        z.B. RabbitMQ.
Application Server     Passenger
Passenger            @railshoster
Passenger‣ Plugin für Apache Webserver                 @railshoster
Passenger‣ Plugin für Apache Webserver‣ Plugin für NGINC Webserver                 @railshoster
Passenger‣ Plugin für Apache Webserver‣ Plugin für NGINC Webserver‣ Standalone Version                 @railshoster
Passenger            @railshoster
Passenger‣ Gut in Kombination mit Ruby Enterprise  Edition (Ruby 1.8.7)                  @railshoster
Passenger‣ Gut in Kombination mit Ruby Enterprise  Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis                  @ra...
Passenger‣ Gut in Kombination mit Ruby Enterprise  Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC          ...
Passenger‣ Gut in Kombination mit Ruby Enterprise  Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC‣ Integrie...
Passenger‣ Gut in Kombination mit Ruby Enterprise  Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC‣ Integrie...
Application Server     Unicorn
Unicorn          @railshoster
Unicorn‣ Designed for Rack & Unix gewinnen.  Nutzt OS Libs wo möglich um Performance zu                       @railshoster
Unicorn‣ Designed for Rack & Unix gewinnen.  Nutzt OS Libs wo möglich um Performance zu‣ Process management startet abgest...
Unicorn‣ Designed for Rack & Unix gewinnen.  Nutzt OS Libs wo möglich um Performance zu‣ Process management startet abgest...
Mehr über Unicorn http://rh.gd/s9a8PX
Application Server  Thin vs. Unicorn
Thin                           Unicorn                  Thin vs. Unicorn [Requests / s]15000                              ...
http://rh.gd/rKXakt
Links
Links
Links‣ Thin http://code.macournoyer.com/thin/
Links‣ Thin http://code.macournoyer.com/thin/‣ Unicorn http://unicorn.bogomips.org/
Links‣ Thin http://code.macournoyer.com/thin/‣ Unicorn http://unicorn.bogomips.org/‣ Phusion Passenger http://www.modrails...
Nächste SlideShare
Wird geladen in …5
×

Ruby, RACK und Ruby on Rails Application Server 2012

1.502 Aufrufe

Veröffentlicht am

Eine kurze Übersicht über Möglichkeiten zum Betrieb eines Ruby, Rack oder Ruby on Rails Applications Servers. Es werden die Möglichkeiten Apache/NGINX mit Passenger, Thin und Unicorn in Kürze vorgestellt.

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

  • Gehören Sie zu den Ersten, denen das gefällt!

Ruby, RACK und Ruby on Rails Application Server 2012

  1. 1. Enterprise Hosting Workshop Ruby on Rails Application Server Julian Fischer fischer@enterprise-rails.de http://www.enterprise-rails.de
  2. 2. Ruby/RACK/RailsApplication Server
  3. 3. Application Server Übersicht
  4. 4. Application Server @railshoster
  5. 5. Application Server Thin
  6. 6. Thin @railshoster
  7. 7. Thin‣ Verwendet den Mongrel Parser. @railshoster
  8. 8. Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf. @railshoster
  9. 9. Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf.‣ Vollständig RACK kompatibel. @railshoster
  10. 10. Thin‣ Verwendet den Mongrel Parser.‣ Setzt auf EventMachine auf.‣ Vollständig RACK kompatibel.‣ Serviert nur eine einzelne App-Instanz @railshoster
  11. 11. Thin @railshoster
  12. 12. Thin‣ Es müssen mehrere Thin-Instanzen auf mehren Ports betrieben werden. @railshoster
  13. 13. Thin‣ Es müssen mehrere Thin-Instanzen auf mehren Ports betrieben werden.‣ Einwenn nur ein App-Server vorhandenbenötigt. Auch Load Balancer wird ist. @railshoster
  14. 14. Thin‣ Es müssen mehrere Thin-Instanzen auf mehren Ports betrieben werden.‣ Einwenn nur ein App-Server vorhandenbenötigt. Auch Load Balancer wird ist.‣ Ein Prozessmonitor (z.B. Monit) sollte die Thins bewachen und ggf. neustarten. @railshoster
  15. 15. Application Server Monit
  16. 16. Application Server @railshoster
  17. 17. Application ServerMonit @railshoster
  18. 18. http://mmonit.com/monit/
  19. 19. Eignet sich auch für das aktive, eingreifende Monitoring vieler andere Prozesse, z.B. RabbitMQ.
  20. 20. Application Server Passenger
  21. 21. Passenger @railshoster
  22. 22. Passenger‣ Plugin für Apache Webserver @railshoster
  23. 23. Passenger‣ Plugin für Apache Webserver‣ Plugin für NGINC Webserver @railshoster
  24. 24. Passenger‣ Plugin für Apache Webserver‣ Plugin für NGINC Webserver‣ Standalone Version @railshoster
  25. 25. Passenger @railshoster
  26. 26. Passenger‣ Gut in Kombination mit Ruby Enterprise Edition (Ruby 1.8.7) @railshoster
  27. 27. Passenger‣ Gut in Kombination mit Ruby Enterprise Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis @railshoster
  28. 28. Passenger‣ Gut in Kombination mit Ruby Enterprise Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC @railshoster
  29. 29. Passenger‣ Gut in Kombination mit Ruby Enterprise Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC‣ Integriert sich gut in NGINX/Apache @railshoster
  30. 30. Passenger‣ Gut in Kombination mit Ruby Enterprise Edition (Ruby 1.8.7)‣ Bis zu 33% Speicherersparnis ‣ Tuned GC‣ Integriert sich gut in NGINX/Apache ‣ Liefert auch statische Inhalte aus ohne dabei den Rails-Stack zu durchlaufen. @railshoster
  31. 31. Application Server Unicorn
  32. 32. Unicorn @railshoster
  33. 33. Unicorn‣ Designed for Rack & Unix gewinnen. Nutzt OS Libs wo möglich um Performance zu @railshoster
  34. 34. Unicorn‣ Designed for Rack & Unix gewinnen. Nutzt OS Libs wo möglich um Performance zu‣ Process management startet abgestorbene Instanzen Verwaltet mehrere App-Instanzen und neu. Ein Load Balancer ist somit bei einem einzelnen App-Server nicht erforderlich. @railshoster
  35. 35. Unicorn‣ Designed for Rack & Unix gewinnen. Nutzt OS Libs wo möglich um Performance zu‣ Process management startet abgestorbene Instanzen Verwaltet mehrere App-Instanzen und neu. Ein Load Balancer ist somit bei einem einzelnen App-Server nicht erforderlich.‣ Vollständiger RACK Support => Rails & Sinatra Support @railshoster
  36. 36. Mehr über Unicorn http://rh.gd/s9a8PX
  37. 37. Application Server Thin vs. Unicorn
  38. 38. Thin Unicorn Thin vs. Unicorn [Requests / s]15000 8,01211250 6,774 7500 3750 4,347 3,638 0 1 Instance 3 Instances
  39. 39. http://rh.gd/rKXakt
  40. 40. Links
  41. 41. Links
  42. 42. Links‣ Thin http://code.macournoyer.com/thin/
  43. 43. Links‣ Thin http://code.macournoyer.com/thin/‣ Unicorn http://unicorn.bogomips.org/
  44. 44. Links‣ Thin http://code.macournoyer.com/thin/‣ Unicorn http://unicorn.bogomips.org/‣ Phusion Passenger http://www.modrails.com/index.html

×