[asp.net] trainingsaccount maken / verwijderen*

Pagina: 1
Acties:

  • joopst
  • Registratie: Maart 2005
  • Laatst online: 01-10-2024
Hoi tweakers,

Bij ons bedrijf hebben we een asp.net site die als application service draait. Dwz dat alle klanten technisch gezien dezelfde app gebruiken, maar wel allemaal een eigen 'stukje' met eigen gegevens.

Als er een nieuwe klant bij komt, maken we een nieuwe 'organisatie' (=entiteit in systeem) en wat admin accounts aan op het systeem. Vanaf dat punt kunnen de klanten zelf user accounts aanmaken, en dmv het systeem te gebruiken het systeem zelf inrichten.

Nu het volgende:
Er gaan ook trainingen gegeven worden die gebruik maken van het/een live-systeem van deze asp. Het is voor de trainers makkelijk(er) als ze aan het begin een vooringerichte systeem hebben. Dus wat al wat meer (best veel meer) gegevens ingevoerd dan een nieuwe kale trainings-organisatie. Aan het begin van een nieuwe training willen ze hun 'trainings-organisatie' resetten zodat er weer een clean vooringericht systeem is.

De asp.net applicatie heeft op dit moment redelijk wat code en 127 db (ms-sql) tabellen. Aan het systeem worden nog met grote regelmaat nieuwe functionaliteiten toegevoegd. De 'wensen' van wat er in een trainings-standaard-organisatie moet zitten gaat dus ook meeveranderen.

HOE kan ik het gemakkelijkst en robuustst maken dat er met 1 klik op de knop een vooringerichte organisatie in het systeem komt, danwel een bestaande organisatie teruggezet ? :)

Waar ik zelf op kon komen:

Een extra website inrichten speciaal voor trainingen. Een extra database. En dan steeds als de organisatie ingericht moet worden een db-backup terug zetten.
-voor: lekker snel te realiseren
-tegen: 2 asp sites, niet zo handig bij te houden. Het is nl net de bedoeling om 1 site te houden}:O
-tegen: als er meerdere trainingen tegelijk gegeven gaan worden zit je klem

SQLscript maken
een lowlevel insert/delete script dat direct records in de database wijzigt.
-tegen: ingewikkeld omdat het niet 'nieuwe' tabellen zijn die je leeg mag gooien.
-tegen: lastig onderhoudbaar

XML import/export maken
Er komt een functie om een dump van het systeem te schrijven naar een te definieren xml-format. En een tweede functie om dat weer in te lezen.
voor: er kan gebruik worden gemaakt van bestaande app-logica (code)
voor: minder kans om businessrules te violaten
tegen: veel werk om te maken en bij te houden

System Restore
Windows heeft zo'n knopje dat je een zogenaamd 'save-point' kan doen.
voor: handig om wijzigingen ongedaan te maken
tegen: geen idee hoe ik het zou moeten maken


wie o wie weet hier wat op :)

alvast bedankt voor de moeite van het lezen.

Verwijderd

joopst schreef op dinsdag 27 september 2005 @ 09:35:
Een extra website inrichten speciaal voor trainingen. Een extra database. En dan steeds als de organisatie ingericht moet worden een db-backup terug zetten.
-voor: lekker snel te realiseren
-tegen: 2 asp sites, niet zo handig bij te houden. Het is nl net de bedoeling om 1 site te houden}:O
-tegen: als er meerdere trainingen tegelijk gegeven gaan worden zit je klem
Dit lijkt me de meest solide oplossing. Ik zou zelfs een aparte machine opzetten en daar iedere keer een disk image op zetten als verse start.

Als het goed is heb je ook een ontwikkelserver waarop je de website ontwikkelt voordat je hem deployed naar de live server. In dar geval is het een relatief kleine moeite om ook even te deployen naar de trainingsserver en daar een nieuwe image van te maken. Sterker nog: het deployen naar de trainingsserver kan gebruikt worden als 'test' van de deploymentprocedure.

Succes :)

  • sig69
  • Registratie: Mei 2002
  • Nu online
Verwijderd schreef op dinsdag 27 september 2005 @ 10:08:
[...]

Dit lijkt me de meest solide oplossing. Ik zou zelfs een aparte machine opzetten en daar iedere keer een disk image op zetten als verse start.

Als het goed is heb je ook een ontwikkelserver waarop je de website ontwikkelt voordat je hem deployed naar de live server. In dar geval is het een relatief kleine moeite om ook even te deployen naar de trainingsserver en daar een nieuwe image van te maken. Sterker nog: het deployen naar de trainingsserver kan gebruikt worden als 'test' van de deploymentprocedure.

Succes :)
Ben ik het helemaal mee eens. Je wil gewoon simpelweg niet lopen kloten met backups, update-scripts, DTS packages of whatever in je productieomgeving.

Roomba E5 te koop


  • joopst
  • Registratie: Maart 2005
  • Laatst online: 01-10-2024
Bedankt voor de reacties.

Na het lezen van jullie reacties en wat nadenken lijkt het me idd het beste om een parallel systeem te hebben dat voor dit doel gebruikt gaat worden.

peace

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Voor een applicatie die wij draaien hebben we het idd ook zo gedaan aangezien dat geen impact heeft op je werkelijke site. Bij ons is het dan zo dat er elke nacht automatisch een backup van de echte database terug gezet word naar de oefen versie want het trainings princiepe werkt iets anders maar het idee is hetzelfde.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”