Guerilla Projektmanagement

IT Projekte & Agilität & Zeuch

Ruby On Rails Traps

Ich letzter Zeit habe ich eine größere Rails-Anwendung debugged. Dabei habe ich etwas über einige Stolperfallen gelernt. Wer also ähnliche Probleme hat, hier ein paar Tipps:

Niemals Mongrel und PStore zusammen einsetzen
Wir hatten einige Probleme mit Session-Handling. Der Grund lag daran, dass wir die Sessions im Filesystem gespeichert haben. Laut Mongrel-FAQ soll man das auch nicht machen. Aber weder ich, noch verschiedenste Entwickler und Firmen die ich mit meinem Problem genervt hatte, kamen auf diese Lösung.
Also: Sessions immer in der Datenbank, oder im memcache speichern!

Rails hat große Timeout-Probleme
Wenn Rails bei memcache in einen Timeout läuft, kann sich Mongrel aufhängen. Prinzipiell scheint die IO-Lib von Rails suboptimal programmiert zu sein. Ich bin durch einen Blog-Eintrag bei Rapleaf darüber gestolpert. Dort findet sich auch ein Code-Schnippsel, um das Problem mit memcache zu lösen.

memcache und gettext mögen sich nicht
Der ist auch super. Gettext (dient zur Lokalisierung von Web-Seiten) und der memcache-Client arbeiten nicht vernünftig zusammen. Details und Lösung gibt es hier.

Wenn ich jetzt noch herausfinde, warum memcache Probleme mit dem automatischen expire hat, wird es ein guter Tag.

,

One thought on “Ruby On Rails Traps

  • Werner sagt:

    Ist eigentlich JRuby kompatibel zu ruby? In der ObjektSpektrum behauptet Stefan Tilkov von der Innoq ja, sie würden Web-Projekte mit Ruby mit 70% weniger Aufwand anbieten können als bei Java.

    Wenn also die eigenen Ablaufumgebungen noch nicht so stark sind, dann könnte man ja die endlosen Weiten der Java-App-Server einsetzen…

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert