Frage

Ich habe zwei Server Windows 2008 Web Edition und SQL 2008 Standard Edition ausgeführt wird, wie wäre der beste Ansatz sein, um sie zu laden zu balancieren?

Sollte ich die Datenbankspiegelung oder Protokollversand? Ist Win2008 NLB leicht von einem Entwickler zu konfigurieren, da ich keinen Sys Admin bin?

Was ich suche ist in der Lage sein, meine Seiten im Falle einer einzigen Fehlfunktion des Servers ausgeführt haben, und auch weitere Server hinzufügen, wenn die Nachfrage wächst leicht in der Lage sein. Meine Websites läuft in ASP.Net 3.5 und alle von ihnen lagern bereits die Sitzung in SQL Server.

War es hilfreich?

Lösung

SQL Server nicht von selbst Load Balancing unterstützen. Sie können sich mit den Mechanismen aktiv / passiv Failovern haben Sie beschrieben (Datenbankspiegelung und Protokollversand) und es gibt viele andere Optionen, wie gut, wie Clustering oder Replikation.

Die beiden Fragen mit zu beginnen sind:

  • Wie lange kann man sich leisten bis zu sein? (Auch bekannt als Ihre Recovery Time Objective oder RTO)
  • Wie viele Daten können Sie leisten zu verlieren? (Auch bekannt als Ihre Recovery Point Objective, RPO oder)

Je mehr Zeit Sie sich leisten können, wird nach unten und je mehr Daten, die Sie leisten können zu verlieren, dann ist die einfacher und kostengünstige Lösungen werden zu implementieren. Je weniger Ausfallzeiten und weniger Daten, desto schwieriger ist es zu implementieren.

Zum Beispiel wird synchrone Datenbankspiegelung garantieren, dass Sie nie eine Transaktion verlieren. Die Transaktionen werden auf beiden Datenbankservern begangen, bevor das Ergebnis an den Client zurückgegeben wird. Leider leiden Sie eine ziemlich große Auswirkungen auf die Leistung bei hoher Belastung, und es gibt minimale Verwaltungsprogramme eingebaut - Sie eine Vollzeit-DBA haben wollen diese Art der Sache zu verwalten

.

Im anderen Extrem, melden alle 15 Minuten Versand würde bedeuten, dass Sie 15 Minuten Daten verlieren könnten (oder mehr) und es könnte 15-60 Minuten wieder online nach einem Fehler zu erhalten. Aber es ist billig, hat eine sehr geringe Auswirkung auf die Leistung und es ist ziemlich einfach einzurichten.

Ich habe eine RPO und RTO Einführung über auf BrentOzar.com und ein Einführung in SQL Server HA und DR verfügt über . Wenn Sie durch diejenigen gehen, werden Sie besser bewaffnet zurück zu kommen und spezifischere Fragen zu stellen. Hoffe, das hilft!

Andere Tipps

Je nach Anwendung gibt das erste, was Sie tun sollen, ist Caching Dinge beginnen, die auf dem Web-Server nicht viel ändern. Auf diese Weise Ihre Datenbank wird weniger getroffen zu werden. und Web-Server sind viel einfacher, dass Datenbanken zu skalieren.

Dies ist ein ziemlich guter Artikel über das Thema ist.

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