Toon posts:

[MySQL/ASP] verbinding met database openhouden.

Pagina: 1
Acties:

Verwijderd

Topicstarter
We hebben hier een webbased database gemaakt met ASP. En nou duurt het aardig lang voordat we daadwerkelijk de gegevens te zien krijgen. (bijv ophalen van gegevens van een tabel)
code:
1
select * from voorstelling

Het duurt ongeveer 2 a 3 seconden voordat het op het scherm te zien is. Terwijl andere (klasgenoten) de gegevens sneller op het scherm kunnen laten zien maar zij gebruiken PhP ipv ASP.
Op elke pagina maken we verbinden met de database en sluiten we die weer.
Zie voorbeeld:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<html>
<head>
    <title>test 4</title>
</head>

<body>
<center>Test1<br>
<BR>Hier wordt de voorstellingen tabel weergegeven
<HR></center>
<%
Set connectionToDatabase=Server.CreateObject("ADODB.Connection")
connectionToDatabase.ConnectionTimeout=60
connectionToDatabase.Open "DSN=test"

Set recordSet=Server.CreateObject("ADODB.Recordset")
recordSet.Open "SELECT * FROM voorstelling", connectionToDatabase

If response.IsClientConnected = true then
    Response.Write("<center><table border='1' bordercolor='Black' bordercolordark='Black' bgcolor='Silver'><tr><th>ID</th><th>Voorstelling</th><th>Datum</th><th>Tijd</th></tr>")

Do While Not recordSet.EOF
            Response.Write("<TR>")
            Response.Write("<TD>" & recordSet("ID_voorstelling") & "</TD>")
            Response.write("<TD>" & recordSet("Naam") & "</TD>")
            Response.write("<TD>" & recordSet("Datum") & "</TD>")
            Response.write("<TD>" & recordSet("Tijd") & "</TD>")
            Response.Write("</TR>")
            recordSet.MoveNext
Loop
Response.Write("</table></center>")

else
    Response.End
End If
connectionToDatabase.Close
Set connectionToDatabase=Nothing
%>
</body>
</html>

Wat we willen is dat de verbinden met de database open blijft door de verbinding niet te sluiten.
Voorbeeld van wat we proberen:

1ste bestand maakt verbinding met de database maar sluit hier de verbinding niet.
+-------+
| 1ste |
| |
+-------+

In de tweede asp pagina wordt geen verbinding gemaakt maar ook wordt de verbinding niet gesloten.
+-------+
| 2de |
| |
+-------+

In de derde pagina wordt geen verbinding gemaakt maar wordt wel de verbinding gesloten.
+-------+
| 3de |
| |
+-------+

Maar dat lukt ons niet.
Door de verbinding niet te sluiten denken wij dat het verwerkingsproces sneller gaat lopen.

Is onze manier wel mogelijk in ASP?

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:57
Ik denk niet dat uw performance probleem daar ligt.

Hoeveel records zitten er in die tabel?

https://fgheysels.github.io/


Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 10:00 schreef whoami het volgende:
Ik denk niet dat uw performance probleem daar ligt.

Hoeveel records zitten er in die tabel?
Niet veel:

+-----------------+----------------+------------+-------+
| ID_voorstelling | Naam | Datum | Tijd |
+-----------------+----------------+------------+-------+
| 1 | Annie | 12-03-2002 | 21:00 |
| 2 | Titanic | 30-04-2002 | 21:00 |
| 3 | Romeo & Juliet | 19-09-2002 | 21:45 |
| 4 | Aida | 20-06-2002 | 21:15 |
| 6 | Roodkapje | 07-08-2002 | 21:00 |
| 7 | Pinokkio | 11-02-2002 | 22:30 |
| 8 | Minoes | 11-02-2002 | 18:00 |
| 10 | Miss saigon | 31-02-2002 | 19:30 |
+-----------------+----------------+------------+-------+

Verwijderd

Dat hele verhaal over het open houden van de database connectie WIL JE NIET. Dat is webprogramerenderwijs niet echt slim.

Misschien komt de derde request nooit en dan blijf je die connectie ophouden. Aan de achterkant doet ADO aan connection pooling, zodat een nieuwe connectie eigenlijk uit een pool van ooit gecreerde connecties wordt gehaald (dus daar zit niet je performance probleem)

  • Devilfish
  • Registratie: Augustus 2001
  • Laatst online: 05-09 16:08
Je kunt proberen om je output eerst in een variabele op te slaan en daarna pas weg te schrijven (Dus aan het eind).

Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 10:22 schreef Devilfish het volgende:
Je kunt proberen om je output eerst in een variabele op te slaan en daarna pas weg te schrijven (Dus aan het eind).
Wat bedoel je daar precies mee????

Verwijderd

Topicstarter
Kun je de reply('s) na 11.00 naar dit e-mail adres sturen m.soeterbroek@ti.mon3aan.nl

Na 11.00 wordt het internet verbinding namelijk afgesloten bij ons op school. :(

Alvast dank!!! :)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
msoete: Kun je de reply('s) na 11.00 naar dit e-mail adres sturen m.soeterbroek@ti.mon3aan.nl
Toch fijn dat je dan nog wel kan mailen :P .

Discussies vinden op GoT plaats. Het wordt niet gewaardeerd als je mensen vraagt om maar te mailen.... Anderen vinden het verhaal wellicht ook interessant namelijk :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 10:51 schreef mbravenboer het volgende:

[..]

Toch fijn dat je dan nog wel kan mailen :P .

Discussies vinden op GoT plaats. Het wordt niet gewaardeerd als je mensen vraagt om maar te mailen.... Anderen vinden het verhaal wellicht ook interessant namelijk :) .
Je kan de reply's toch posten en naar mij toe mailen.

Jullie blij :)
ik blij. :)
Iedereen blij. :)

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Je hebt 1 of andere website, kan je url naar mailen en krijg je de website teruggemailt :)

Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 11:04 schreef raptorix het volgende:
Je hebt 1 of andere website, kan je url naar mailen en krijg je de website teruggemailt :)
Aha... :?

Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 10:51 schreef mbravenboer het volgende:

[..]

Toch fijn dat je dan nog wel kan mailen :P .
Je kan niet meer op websites (geen gathering.tweakers.net :( ) komen, maar de school heeft de e-mail (alleen via een webbased e-mail van school) gebeuren wel open staan

Verwijderd

Topicstarter
Op vrijdag 15 februari 2002 10:18 schreef vip32 het volgende:
Dat hele verhaal over het open houden van de database connectie WIL JE NIET. Dat is webprogramerenderwijs niet echt slim.

Misschien komt de derde request nooit en dan blijf je die connectie ophouden. Aan de achterkant doet ADO aan connection pooling, zodat een nieuwe connectie eigenlijk uit een pool van ooit gecreerde connecties wordt gehaald (dus daar zit niet je performance probleem)
Waar kan het dan wel aan liggen volgens jou??

Verwijderd

Waar kan het dan wel aan liggen volgens jou??
Draaien asp apart en php en mysql op dezelfde linux server? (php gebruikt dan unix socket naar mysql).

Verwijderd

Topicstarter
Op zaterdag 16 februari 2002 15:27 schreef lnfinitive het volgende:

[..]

Draaien asp apart en php en mysql op dezelfde linux server? (php gebruikt dan unix socket naar mysql).
Ik ben vergeten erbij te vertellen dat het draait op Windows 2000 server, en we gebruiken alleen ASP en Mysql (opdracht van onze school) :( .
Pagina: 1