Konfiguration von Ruby Web-Applikationen

Basierend auf persönlicher Erfahrung, Beobachtungen, Ausfällen im Produktivbetrieb und Austausch mit Kolleginnen ist meine Meinung zu Konfiguration wie folgt.

Es gibt einen Unterschied zwischen Konfigurations Werten und der Konfigurations Definition.

Um Ausfälle zu verhindern ist es wichtig eine explizite Definition der Konfiguration zu haben und die Konfiguration sofort beim Start der Web-Applikation zu laden. So können Laufzeitfehler in dynamischen Programmiersprachen denen Konfigurationsfehler zugrunde liegen minimiert werden.

Konfigurations Werte können aus Umgebungsvariablen, Konfigurationsdateien oder Kommandozeilenparameter ausgelesen werden.

Kommandozeilenparameter sind für sensible Werte wie Datenbank Verbindungsdaten nicht geeignet da sie im Prozessbaum des Betriebsystems für alle Benutzerinnen sichtbar sind.

Im Produktivbetrieb eignen sich Konfigurationsdateien da mit Berechtigungen Sicherheit geschaffen werden kann.

In der Entwicklung kann mit --config <( echo '{"database_url":"..."}';) eine Konfigurationsdatei vorgetäuscht werden um das Entwicklungserlebnis zu verbessern.


You will find the imprint and privacy policy linked in the next paragraph. They are there to be on the safe side. To spare you two clicks: This website doesn't use any analytics, cookies or other stuff and anonymises your IP in the web server log files.

Sitemap · Impressum · Datenschutzerklärung