Frage

Ich habe eine Anwendung (ein IP-Konferenzdienst), die ich skalieren muß. Es hat einige unabhängigen Komponenten / Anwendungen in verschiedenen Sprachen geschrieben (vor allem C ++ und PHP, einige Perl). Derzeit eine einzige Installation läuft auf 5 Maschinen, mit 1-2 Komponenten eine einzige Box zu teilen. Die Konfiguration jedes Feld ist daher unterschiedlich, also es ist ein Schmerz, die ganze Sache zu skalieren, nicht Wartung zu erwähnen.

Die einzelnen Komponenten variieren von Medien-Proxys Nachricht Proxies und Datenbanken, so Last alles ist aber selbst.

Ich dachte an alle Komponenten auf einer einzigen Maschine setzen und mehr Boxen hinzufügen, wie ich zusammen mit irgendeiner Art von einem Load Balancer vor gehen. Andere rieten mir, die andere Art und Weise zu skalieren - Specialised Boxen, wo die App Last hoch wird - aber dies führt zurück zur Wartung Alptraum

.

Haben Sie Ressourcen wissen, wo soll ich anfangen? Welcher Ansatz ist besser in Bezug auf Leistung Im Idealfall würde ich einige Benchmarks benötigen? (Laut zu denken, wenn ich X Höhe der Belastung und Y Menge an Speicher und Rechenleistung, wo es nicht egal, wie ich es zuteilen?)

War es hilfreich?

Lösung

Ich würde für die Virtualisierung gehen. Auf diese Weise können Sie verschiedene ähnliche Konfiguration Maschinen haben und verteilen Last unter ihnen je nach Bedarf, auch wenn Sie Module in separaten VMs halten.

Andere Tipps

Sie müssen bestimmen, wo der höchste Belastung oder Flaschenhals es schwierig sein wird ordnungsgemäß dies zu planen ohne.

Ich würde Sekunde bei Virtualisierung suchen. Es macht Ihre App: Schnell einsatzbereit Einfache Backup Auf Falle eines Ausfalls schnell wiederherstellen

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