If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
250ms vind ik wel heel veel tijd voor het openen van een db-connectie.
If money talks then I'm a mime
If time is money then I'm out of time
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
@Matis: De webserver en database server zijn 2 verschillende servers.
1
2
3
4
5
6
7
8
9
10
11
| echo (getmicrotime() - $load_time). "<br />"; $_DB_conn_1 = mssql_connect($_db_1_ip, $_db_1_user, $_db_1,pass, true) or die("Kan geen verbinding maken"); echo (getmicrotime() - $load_time). "<br />"; mssql_select_db($_db_1, $_DB_conn_1) or die("Kan de database niet selecteren"); echo (getmicrotime() - $load_time). "<br />"; $_DB_conn_external = mssql_connect($_db_external_ip, $_db_external_user, $_db_external_pass, true) or die("Kan geen verbinding maken"); echo (getmicrotime() - $load_time). "<br />"; mssql_select_db($_db_external, $_DB_conn_external) or die("Kan de database niet selecteren"); echo (getmicrotime() - $load_time). "<br />"; exit; |
[ Voor 83% gewijzigd door Guillome op 09-03-2010 16:22 ]
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
Verwijderd
Edit: Niet zo slim om het wachtwoord mee te geven in die "die()"! Gebruik je trouwens wel een ipadres ipv een hostname om te connecten? Zou kunnen liggen ana het resolven van de hostname naar een ipadres.
[ Voor 41% gewijzigd door Verwijderd op 09-03-2010 16:23 ]
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
Wat denk je ?Guillome schreef op dinsdag 09 maart 2010 @ 16:20:
Wat bedoel je Roblll?
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Is dat een domeinnaam of een ipadres?
Indien het eerste het geval is, kan de DNS-recursion ook nog een negatieve invloed hebben op je connectietijd.
If money talks then I'm a mime
If time is money then I'm out of time
@ruggerlak: klopt, ik heb het verwijderd.
`t Zijn IP adressen
[ Voor 8% gewijzigd door Guillome op 09-03-2010 16:25 ]
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
Ja, ik zie nu ook pas dat je de connectie "per sessie" wil openhouden... Ik dacht even dat je voor elke actie opnieuw de connectie opende.Guillome schreef op dinsdag 09 maart 2010 @ 16:24:
@Robill, ja ik had de code net na jouw reactie geplaatstJa dat gebruik ik.
[ Voor 11% gewijzigd door RobIII op 09-03-2010 16:27 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Ik weet btw niet hoe dat performed of hoe fatsig dat is
[ Voor 40% gewijzigd door Matis op 09-03-2010 16:27 ]
If money talks then I'm a mime
If time is money then I'm out of time
“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.
"Unable to set query". Bij alleen de 1e werkt het, en scheelt het zo`n 0.2 seconden
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
Nu is het d.d. 06 maart 2006, ik weet niet of er al fixes zijn, maar dat zou je eens kunnen proberen.If you have multiple databases on the same server AND you are using persistent connections, you MUST prefix all the table names with the specific database name.
Edit; dat neemt nog niet weg dat de opmerking van Okke blijft gelden.
[ Voor 7% gewijzigd door Matis op 09-03-2010 17:00 ]
If money talks then I'm a mime
If time is money then I'm out of time
Rare is dat de 2e connectie langer duurt dan de 1e, terwijl het dezelfde server is.
0.224989891052
0.22541809082
0.552973031998
0.553289890289
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
If money talks then I'm a mime
If time is money then I'm out of time
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
Nee, dat is het niet
Wat jij nu doet is op die punten kijken hoe lang het totale programma al loopt. Je trekt als het ware steeds een constante waarde af van de huidige tijd.
[ Voor 10% gewijzigd door Matis op 10-03-2010 09:04 ]
If money talks then I'm a mime
If time is money then I'm out of time

Met connect
0.204
0.001
0.217
0.001
Met (1e alleen) pconnect
0.001
0.001
0.129
0.001
Over het algemeen zijn beide connecties idd even snel.
Edit: als ik beide op pconnect zet is het net zo snel (traag) als met 1 pconnect.
Edit2:
Als ik dit doe werkt het vlot, maar is dit euhh... netjes? 2 keer pconnect, met een select_DB elke keer dat ik de andere DB benader (makkelijk te doen in mijn code).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| $_DB_conn_1= mssql_pconnect($_db_1_ip, $_db_1_user, $_db_1_pass) or die("Kan geen verbinding maken."); echo getmicrotime() - $start_time. "<br />";$start_time = getmicrotime(); mssql_select_db($_db_1, $_DB_conn_1) or die("Kan de database niet selecteren."); echo getmicrotime() - $start_time. "<br />";$start_time = getmicrotime(); $_DB_conn_external = mssql_pconnect($_db_external_ip, $_db_external_user, $_db_external_pass) or die("Kan geen verbinding 2 maken"); echo getmicrotime() - $start_time. "<br />";$start_time = getmicrotime(); mssql_select_db($_db_external, $_DB_conn_external) or die("Kan de database 2 niet selecteren."); echo getmicrotime() - $start_time. "<br />"; $r = mssql_query("SELECT * FROM tbl WHERE ID > 50000", $_DB_conn_external); echo mssql_num_rows($r). "<br />"; echo getmicrotime() - $start_time. "<br />";$start_time = getmicrotime(); mssql_select_db($_db_1, $_DB_conn_1) or die("Kan de database niet selecteren."); $r = mssql_query("SELECT * FROM users WHERE ID > 100", $_DB_conn_1); echo mssql_num_rows($r). "<br />"; echo getmicrotime() - $start_time. "<br />";$start_time = getmicrotime(); exit; |
Output:
1
2
3
4
5
6
7
8
| 0.00020289421081543 0.0012547969818115 0.00017786026000977 0.0007319450378418 938 0.051059007644653 2691 0.047502040863037 |
[ Voor 245% gewijzigd door Guillome op 10-03-2010 09:34 ]
If then else matters! - I5 12600KF, Asus Tuf GT501, Asus Tuf OC 3080, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router
...Matis schreef op dinsdag 09 maart 2010 @ 16:19:
Draait de database wel op de localhost van de webserver?
250ms vind ik wel heel veel tijd voor het openen van een db-connectie.
[ Voor 23% gewijzigd door _Noldy op 11-03-2010 20:41 . Reden: ongelijk ingezien ]