Frage

Ich habe eine große Webanwendung in ASP .NET (nicht, dass die Technologie hier wichtig ist), die derzeit keine Möglichkeit hat, für die Wartung gesperrt zu werden, ohne dass aktuelle Benutzer ihre Arbeit verlieren. Da ich so etwas noch nicht implementiert habe, würde ich gerne über einige der Standard -Vorsichtsmaßnahmen und Schritte erfahren, die Entwickler für einen solchen Betrieb treffen.

Hier sind einige der Fragen, an die ich denken kann:

  • Sollte jede Seite auf eine Seite "Site Down for Warting" umgeleitet werden oder gibt es eine zentralere Möglichkeit, Interaktion zu verhindern?
  • So zentralisieren Sie eine geplante Wartung, sodass die Benutzeroperationen vor dem Absperrung der Website gesperrt sind. Somit verhindern, dass der Verlust ungerettter Arbeiten.

Die Anwendung ist datengesteuert und implementiert Transaktionsbereiche in der Geschäftsschicht. Es verwendet keine Lastausgleich oder Replikation. Ich mag mich irren, aber es fühlt sich nicht richtig an, dass das BL damit umgegangen ist. Vorschläge oder Links zu Artikeln wären geschätzt.

War es hilfreich?

Lösung

Eine Möglichkeit, eine Wartungsseite zu erstellen, besteht darin, die Funktion von App_offline.htm von IIS zu verwenden. Mit dieser Funktion können Sie alle Ihre Benutzer dieselbe HTML -Seite anzeigen, die sie über die Wartung informieren.

Hier in Stackoverflow gibt es einen schönen Beitrag darüber. ASP.NET 2.0 - So verwenden Sie app_offline.htm.

Eine andere Sache, die Sie tun könnten, ist, Ihren Benutzern darüber zu informieren, dass es eine geplante Wartung gibt, damit sie auch wissen und die Verwendung der Anwendung nicht mehr verwenden.

Das alles hängt von der Zeit ab, die Sie benötigen, um Ihre Anwendung zu verbessern. Wenn das Upgrade die neuen Dateien hochladen und nicht mehr als ein oder zwei Minuten dauert, ist es am wahrscheinlichsten, dass Ihre Benutzer sie nicht einmal sehen.

Andere Tipps

Eine Nicht-Antwork-Antwort, die hilfreich sein kann: Entwerfen Sie die Anwendung, damit sie transparent auf ihre Benutzer aufgerüstet werden kann. Dann haben Sie nie ein Wartungsfenster, über das Benutzer sich wirklich Sorgen machen müssen. Es ist nicht erforderlich, die Anwendung abzuschließen, da alles weiter funktioniert. Wenn Transaktionen fallen gelassen werden, ist dies ein Fehler in der Anwendung, da eine ausdrückliche Anforderung besteht, dass die Anwendung mit laufenden Transaktionen aktualisiert werden kann. Sie wurde so codiert, dass sie dies unterstützt, und es gibt Tests, die diese Funktionalität überprüfen.

Betrachten Sie als Beispiel Netflix: Hat es ein gesperrtes Wartungsfenster? Nicht, dass die breite Öffentlichkeit jemals weiß. :-)

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