[ASP.NET] Updaten met "being updated"-scherm

Pagina: 1
Acties:

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 01:09

GrimaceODespair

eens een tettenman, altijd ...

Topicstarter
Dit is een vraag waar ik al lang mee worstel, maar nog nooit een afdoende antwoord op gevonden heb.

Als je een ASP.NET applicatie (1.0/1.1/2.0) update, zorgen wijzigingen in de bin of de config ervoor dat de applicatie automatisch opnieuw wordt opgestart. Als je tijdens die restart (eigenlijk tijdens het afsluiten) een pagina opvraagt, krijg je "Application is restarting".

Stel nu dat ik tijdens een update een andere melding wil laten weergeven. Ik kan me een paar scenario's indenken, maar ik heb niet het gevoel dat dat "echte" oplossingen zijn, en ik zou ook liever zelf niet aan het programmeren slaan hiervoor (hoewel het misschien niet te vermijden is)
[list]
IIS tijdelijk opnieuw instellen zodat voor de betreffende site altijd een bepaald document wordt weergegeven
Een HttpModule bouwen die op machine-level draait en voor elke site een vlag in de gaten houdt, afhankelijk waarvan standaard gedrag of een "being updated"-pagina getoond wordt.


Behalve dat ik mij afvraag of zoiets wel de bedoeling is, ben ik ook benieuwd of daar standaard-oplossingen voor bestaan. Ik ben er zelf in ieder geval nog nooit een tegengekomen. Ik zoek dus geen manier om application restarts te voorkomen, maar een manier om een custom pagina te tonen
[list]
• Wanneer een site geupdatet wordt
• Wanneer een site om andere redenen herstart

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Gewoon een andere 500-12 error pagina bouwen :?

Standaard in c:\windows\helo\iisHelp\common\, in je IIS manager kun je verschillende dingen instellen op het tabblad Custom Errors, kijk daar maar even naar.

[ Voor 38% gewijzigd door P_de_B op 05-04-2006 12:25 ]

Oops! Google Chrome could not find www.rijks%20museum.nl


  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 01:09

GrimaceODespair

eens een tettenman, altijd ...

Topicstarter
P_de_B schreef op woensdag 05 april 2006 @ 12:24:
Gewoon een andere 500-12 error pagina bouwen :?

Standaard in c:\windows\helo\iisHelp\common\, in je IIS manager kun je verschillende dingen instellen op het tabblad Custom Errors, kijk daar maar even naar.
Misschien kijk ik ergens langs ofzo, maar zie jij dan waar ik het "Application is restarting"-document zou moeten vervangen? Volgens mij wordt deze pagina namelijk door de .NET runtime gegenereerd.

euh.. sorry... omg... ik voel me ff bijzonder lomp...

[ Voor 9% gewijzigd door GrimaceODespair op 05-04-2006 12:30 ]

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Ik begrijp dat je hiermee verder kunt :P

Oops! Google Chrome could not find www.rijks%20museum.nl


  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 01:09

GrimaceODespair

eens een tettenman, altijd ...

Topicstarter
Ik zat in de gedecompileerde system.web rond te neuzen om erachter te komen waar hij dat bericht vandaan haalde, maar het is gewoon een standaard IIS-bericht :X

Wat ik me wel nog afvraag: wat is de gemakkelijkste manier om een applicatie onbereikbaar te maken voor de buitenwereld terwijl hij geupdate wordt. Immers: als je update lang duurt, kunnen er verschillende herstarts plaatsvinden als iemand ondertussen de site probeert op te vragen.

Je kan ondertussen wel de applicatie eraf gooien (in ISS), maar zijn er daar meer gangbare manier voor?

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Als je een custom error kan tonen is dat toch niet echt meer aan de orde?

Oops! Google Chrome could not find www.rijks%20museum.nl


  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 01:09

GrimaceODespair

eens een tettenman, altijd ...

Topicstarter
P_de_B schreef op woensdag 05 april 2006 @ 12:52:
Als je een custom error kan tonen is dat toch niet echt meer aan de orde?
Nou, het probleem is dat die 500-12 enkel verschijnt als de applicatie in feite aan het afsluiten is. Als de applicatie opnieuw online aan het komen is, moet je (in IE) gewoon wachten tot-ie is opgestart en krijg je verder ook geen melding daarover.

Nu is het zo dat bij een update soms veel programma-bestanden gewijzigd worden. Het scenario is dan

ikASP.NETclient
Overschrijf dll1
Begint afsluiten
|Doet request A en krijgt "Restarting" voor de kiezen
Eindigt afsluiten
Doet request B en wacht
Start opnieuw op|
|Krijgt response B
Overschrijf dll2|
Sluit weer af


Ik wil eigenlijk vermijden dat Response B mogelijk is. Daar zou dus ook een under construction melding moeten komen. Eigenlijk gaat het dus over het tijdelijk ontoegankelijk maken van de applicatie.

Wij onderbreken deze thread voor reclame:
http://kalders.be

Pagina: 1