Quantcast
Channel: Karriere – Seite 23 – mynethome.de
Viewing all articles
Browse latest Browse all 65

Ruby on Rails mit Apache

$
0
0

Möchte man eine Rails-Anwendung, wie zum Beispiel Redmine (eine Anwendung zur Verwaltung von Projekten, mit einer beeindruckenden Featureliste) unter Linux mit dem Apache 2 bereistellen, bietet sich das noch recht junge Apache Modul Passenger (aka mod_rails) an.

Für Ubuntu sind sogar mod_rails Pakete verfügbar, nach eigener Erfahrung muss ich jedoch von deren Verwendung – und das ist der Grund für diesen Blogeintrag – abraten.

Warum? In den Abhängigkeiten des Pakets wird der Apache in der Version mpm-worker verlangt. mpm-worker bezeichnet hierbei die interne Arbeitsweise des Apache und impelemtiert einen Hybrid-Webserver mit Multi-Thread und Multi-Prozess-Unterstützung, was große Performancegewinne und Skalierbarkeit verspricht. Alternativ dazu gibt es u.a. noch die Variante mpm-prefork, die einen im Voraus forkenden Webserver ohne Thread-Unterstützung bietet. Durch das Forken und die fehlende Threadunterstützung besitzt diese Varante zwar weniger Flexibilität, jedoch deutlich mehr Stabilität. Außerdem können nicht-threadsichere Module und Bibliotheken wie zum Beispiel PHP verwendet werden.

Die Verwendung von mpm-worker führte bei mir zu massiven Problemen. In meinem Fall war es ein kleiner V-Server, auf dem es zu Speicherproblemen kam, die sich folgendermaßen im Errorlog zeigten:
[Thu Oct 30 19:12:52 2008] [alert] (12)Cannot allocate memory: apr_thread_create: unable to create worker thread

oder

[Thu Oct 30 19:14:22 2008] [error] (12)Cannot allocate memory: fork: Unable to fork new process
*** Exception Errno::ENOMEM in spawn manager (Cannot allocate memory - /usr/bin/apxs2 -q BINDIR 2>/dev/null) (process 29905):
from /var/lib/gems/1.8/gems/passenger-2.0.3/lib/passenger/platform_info.rb:67:in ``'
[...]

Nach einigen Versuchen, mit verschiedenen Direktiven für mod_rails/passenger dem Problem beizukommen, habe ich das Paket deinstalliert und mittels
gem install passenger
passenger-install-apache2-module

wieder installiert. Gleichzeitig den Apache mpm-worker gegen den mpm-prefork getauscht, und schon läuft die Anwendung rund und ohne Fehlermeldungen oder Warnungen im Logfile.
Bei dieser Variante kann man auch problemlos PHP5 parallel auf dem selben Apache-Server nutzen.

Eine andere Variante, mpm-worker mit PHP zu nutzen ist übrigens der Einsatz von FastCGI. Dies soll der Vollständigkeit halber erwähnt sein. Allerdings hat man damit die Speicherprobleme von mod_rails/passenger noch nicht gelöst, aber vielleicht lagen diese bei mir ja auch „einfach nur“ an dem V-Server.


Viewing all articles
Browse latest Browse all 65

Trending Articles


Girasoles para colorear


mayabang Quotes, Torpe Quotes, tanga Quotes


Tagalog Quotes About Crush – Tagalog Love Quotes


OFW quotes : Pinoy Tagalog Quotes


Long Distance Relationship Tagalog Love Quotes


Tagalog Quotes To Move on and More Love Love Love Quotes


5 Tagalog Relationship Rules


Best Crush Tagalog Quotes And Sayings 2017


Re:Mutton Pies (lleechef)


FORECLOSURE OF REAL ESTATE MORTGAGE


Sapos para colorear


tagalog love Quotes – Tiwala Quotes


Break up Quotes Tagalog Love Quote – Broken Hearted Quotes Tagalog


Patama Quotes : Tagalog Inspirational Quotes


Pamatay na Banat and Mga Patama Love Quotes


Tagalog Long Distance Relationship Love Quotes


BARKADA TAGALOG QUOTES


“BAHAY KUBO HUGOT”


Vimeo 10.7.0 by Vimeo.com, Inc.


Vimeo 10.7.1 by Vimeo.com, Inc.