Frage

Ich habe mich gefragt, ob jemand erklären kann, wie eine Rails -Anwendung ausgeglichen werden kann.

Zwei Fragen:

  1. Hilft es sogar zu separaten Rails -Anwendungen, die aus derselben Datenbank auf demselben dedizierten Server lesen?

  2. Ich verstehe, dass Apache Last ausbalancieren kann und einige zusätzliche Module installieren kann? habe ich recht? Wie können wir das erreichen? (Bitte geben Sie Erklärungen für Dummies an)

War es hilfreich?

Lösung

Ich würde einen Blick darauf werfen, Passagier zu verwenden - es hat weitgehend Mischling ersetzt und verarbeitet mehrere Schieneninstanzen.

Rails ist ein einzelner Gewinde. Bei der Bereitstellung mit Mongrel ist es also "normal", mehrere Mongrelinstanzen in einem von Apache gebrannten Cluster mit installiertem Mod_Proxy auszuführen. Auf diese Weise können Apache mehrere Anfragen in kostenlose Anwendungsinstanzen verseit.

Alle angemessenen Datenbanken sind für hohe Ebenen gleichzeitiger Anfragen ausgelegt und sollten daher in der Lage sein, eine große Anzahl von Anwendungsinstanzen zu verarbeiten.

Abhängig von Ihren Serverressourcen besteht ein großer Vorteil bei der Ausführung mehrerer Mongrelinstanzen - dies ist tatsächlich die einzige Möglichkeit, gleichzeitige Anfragen zu stellen.

Selbst bei einem kleinen Memory -Host (z. B. 512 MB) könnten Sie, wenn Ihre Rails -App 100 MB Speicher verwendet, leicht in der Lage, mehrere Instanzen ohne Ressourcen auszuführen - Sie könnten dann so viele gleichzeitige Anfragen erfüllen, wie Sie Instanzen haben.

SlieSthost hat einige großartige Artikel wie diese: http://articles.slicehost.com/2009/4/17/centos-apache-rails---Mongrels

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top