Ik heb een database tabel in myisam formaat met 260000 records.
Ik gebruik een volgende query in php om alle berichten van vandaag te laten zien.
Hier zit geen join in.
Het probleem dat optreedt is als volgt.
Als er een tijdje (half uurtje?) niemand de php pagina op heeft gevraagd duurt het een paar minuten voordat er eindelijk een resultaat is. Na 30 sec krijg je dus ook die standaard php error dat het te lang duurt en dus na 30 sec stopt.
Als eenmaal de pagina toch werkt na een paar minuten is de volgende nieuwe refresh er binnen een seconde.
Heeft dit misschien met caching te maken? Zoeken en dergelijke in berichten gaat dan gewoon snel. Totdat het weer een tijdje niet meer wordt gebruit,
Er zit een index op de tekstvelden van de tabel.
Dit is nodig om de fulltext search functie van mysql te gebruiken.
Elke minuut komen er 1 - 3 nieuwe berichten bij. Het is net alsof hij de nieuwe berichten gaat zitten indexeren voordat de php pagina eindelijk geladen wordt. Hoe langer je dus wacht hoe meer berichten er in de database bij zijn gekomen en hoe langer het lijkt te duren.
Het draait op IIS php 5.0.3 en mysql 5.0
Server heeft 1 gig werkgeheugen (niet vol) en een 2.4 intel xeon cpu
Ik gebruik een volgende query in php om alle berichten van vandaag te laten zien.
Hier zit geen join in.
code:
1
2
3
| $sql = "select id, berichtid, tijd, categorie, titel from berichten WHERE date_format(tijd, '%Y-%m-%d') = '$vandaag' ORDER BY tijd Desc"; |
Het probleem dat optreedt is als volgt.
Als er een tijdje (half uurtje?) niemand de php pagina op heeft gevraagd duurt het een paar minuten voordat er eindelijk een resultaat is. Na 30 sec krijg je dus ook die standaard php error dat het te lang duurt en dus na 30 sec stopt.
Als eenmaal de pagina toch werkt na een paar minuten is de volgende nieuwe refresh er binnen een seconde.
Heeft dit misschien met caching te maken? Zoeken en dergelijke in berichten gaat dan gewoon snel. Totdat het weer een tijdje niet meer wordt gebruit,
Er zit een index op de tekstvelden van de tabel.
Dit is nodig om de fulltext search functie van mysql te gebruiken.
Elke minuut komen er 1 - 3 nieuwe berichten bij. Het is net alsof hij de nieuwe berichten gaat zitten indexeren voordat de php pagina eindelijk geladen wordt. Hoe langer je dus wacht hoe meer berichten er in de database bij zijn gekomen en hoe langer het lijkt te duren.
Het draait op IIS php 5.0.3 en mysql 5.0
Server heeft 1 gig werkgeheugen (niet vol) en een 2.4 intel xeon cpu
[ Voor 16% gewijzigd door herminator op 11-09-2007 09:43 ]
I'll be back