Toon posts:

[asp] recordset in sessievar of steeds opnieuw openen?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een database en een .dll van een externe partij op mijn webserver staan. De database wordt maandelijks vervangen, maar er vinden geen schrijfacties naar de db plaats.

Met een functie uit de .dll kan ik een recordset vullen met data (niet groot, ong. 30 records, 2 velden).

Ik gebruik deze .dll op een pagina waar een invulformulier staat, welke steeds ververst (en verandert) als gevolg van javascript-events (als de bezoeker een keuze heeft gemaakt).

Is het nu (performance-)technisch beter om de inhoud van die recordset in een sessievariabele te stoppen, zodat die na elke refresh gebruikt kan worden, en niet steeds opnieuw de database benadert hoeft te worden?

Want ik ben me bewust van het feit dat Sessievariabelen 'slecht' zijn, maar ik vraag het me in dit geval toch af...

  • whoami
  • Registratie: December 2000
  • Laatst online: 12:06
Waarom zijn sessie-variabelen 'slecht'?

In dit geval zou ik echter wel iedere keer de query opnieuw uitvoeren. Zie ook dit topic:
[rml][ ASP.NET] Database in session?[/rml]

https://fgheysels.github.io/


  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 18-05 15:53

Jaspertje

Max & Milo.. lief

Inderdaad, de oplossing die je geeft is imo gewoon goed, misschien moet je uitkijken dat je niet oneindig veel sessies gaat begruiken, maar sessies zijn echt niet slecht hoor...

  • Sjaaky
  • Registratie: Oktober 2000
  • Laatst online: 26-05 01:17
In asp is het toch zo dat als je objecten in een sessie stopt, je sessie aan 1 specifieke thread gebonden wordt. Ligt volgens mij ook aan het threading model van de recordset.
In asp.net is dat misschien verholpen, maar ik kan me herinneren dat het voor asp sterk afgeraden werd ivm performance. Om dit soort effecten te meten moet je wel een soort van webserver stress tester hebben. Het effect treedt namelijk pas op bij veel requests per seconde over verschillende sessie's.

  • d00d
  • Registratie: September 2003
  • Laatst online: 16-09-2025

d00d

geen matches

Kun je geen gebruik maken van het Application object? Zo nee, dan moet je bepalen wat de kosten zijn van het uitvoeren van de query. Is het een simpel select statement op 1 tabel of is het een stored proc van honderden regels die meerdere tabellen raakt?

Verder is het ook nog van belang waar de database zich bevind t.o.v. de webserver. Zelfde machine --> niet zo'n probleem, andere kant van de wereld --> groot probleem!

Hope this helps

42.7 percent of all statistics are made up on the spot.