traag ? of acceptabel?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mar kla

mar kla

19/09/2005 15:45:00
Quote Anchor link
Zonder mijn hele script te gaan poste.

Het volgende:

Ik heb een aantal relationeel gekoppelde bestanden. Het hoofdbestand is ± 1650 records, de (zeg maar) sub bestanden bevatten 500, 600 ,10 en 20 records. Op basis een van waarde in het hoofdbestand worden in het php script gegevens uit andere bestanden getoont. Maar het opbouwen van de pagina duurt nu 30 tot 40
seconden.

Mijn vraag: is dat bij deze hoeveelheid records acceptabel?

Het php script bevat tussen de 4 en 7 include's

zoals: include "connect.php"
include "html_header.php"
include "html_footer.php"

Kan ik soms hier beter require gebruiken?

en de data haal ik zo uit de database:

$query = "SELECT * FROM `games` ORDER BY Game_Date DESC";
$sql = mysql_query($query) or die ( mysql_error( ) );

while(
$record = mysql_fetch_object($sql))
{
$Game_ID = $record->Game_ID;
$Game_Played = $record->Game_Played;

en dan
echo"
<tr>$tdtblrow <A HREF='edit_game.php?id=$Game_ID' TARGET=nieuw>&nbsp;
$Game_ID</font></td>

Ik weet niet of dit afdoende info is om een beetje oordeel te kunnen vellen.....maar anders moet ik het hele script poste en dat wil ik jullie niet aan doen.
 
PHP hulp

PHP hulp

05/12/2020 09:27:44
 
Marien xD

Marien xD

19/09/2005 15:51:00
Quote Anchor link
Probeer eens bij de select ipv * de benodigde velden aan te geven.

dus:

SELECT Game_ID,GAME_Played,nogmeer records FROM games

je snapt denk het principe wel.

Succes ermee
 
Barman V

Barman V

19/09/2005 15:56:00
Quote Anchor link
30 tot 40 seconden is wel erg lang hiervoor. Je moet ervoor zorgen dat je zoveel mogelijk in je query regelt. Dus dat je al je benodigde data uit het liefst 1 query haalt.
Dit is niet alle code, dus ik kan geen inzicht krijgen over de rest van de code.

Zelf werk ik soms ook met databases van 5000 tot 10000 records met daaraan weer relaties, maar ik zorg ervoor dat het ophalen en het tonen van die gegevens nooit langer duurt dan 2 seconden.

Als het laden naar mijn mening te lang duurt, dan zet ik timers in de pagina, zodat ik specifiek weet waar hij zolang voor nodig heeft.


Probeer tevens met SELECT de specifieke velden aan te geven. Nu haalt ie ALLE velden op.
Gewijzigd op 19/09/2005 15:58:00 door Barman V
 
Barman V

Barman V

19/09/2005 16:03:00
Quote Anchor link
Het programma dat je kan gebruiken om tijdwinst te boeken is bijvoorbeeld PHP Accelerator.

Dit programma compileert de php code van tevoren al.

Zie:
www.php-accelerator.co.uk
 
Mar kla

mar kla

19/09/2005 16:08:00
Quote Anchor link
Ik ga zo met jullie tips aan de slag..

alvast bedankt
 
Mar kla

mar kla

19/09/2005 19:33:00
Quote Anchor link
Hum ;-(

Dat SELECT field, field ipv SELECT * maakt niet zoveel uit. In dit script gebruik ik ALLE 16 velden uit de database. ik heb hem terug weten te bregen tot 12 seconden

komt het dan door de methode van fetch?
moet ik anders ergens
mysql_fetch_Row
of
mysql_fetch_assoc
gebruiken in plaats van:
$record = mysql_fetch_object

nu doe ik:
while( $record = mysql_fetch_object($sql))
{ $Game_ID = $record->Game_ID;
$Home_Team_ID =$record->Home_Team_ID;
$Home_Team = mysql_fetch_object(mysql_query(\"SELECT * FROM teams WHERE Team_ID=\'$Home_Team_ID\'\") );

en dan echo met:

$tdtblrow $Game_ID</td>
$tdtblrow $Home_Team->TeamName</font></td>

en dat www.php-accelerator.co.uk werkt alleen met linux, toch ?? en ik zit met een Wamp
 
Mar kla

mar kla

19/09/2005 20:05:00
Quote Anchor link
ondertussen ben ik er achter dat de hele file 1,3 mb aan data is die over gepompt moet worden
 
Jelmer -

Jelmer -

19/09/2005 20:25:00
Quote Anchor link
1,3 mb als resultaat, dat is niet weinig nee!
trouwens, mysql_fetch_assoc() is veel sneller dan mysql_fetch_object().
Dan moet je ze dus benaderen:
$array = mysql_fetch_assoc($sql_result);
$array['veld'] = waarde
ipv
$array->veld = waarde
 
Mar kla

mar kla

19/09/2005 21:17:00
Quote Anchor link
Helaas de mysql_fetch_assoc() maakt ook geen echt verschill uit :-( is nu 11 seconden.

Zou ik iets meer met (meer) indexen o.i.d. moet gaan werken om de bestanden te linken :-?

straks ga ik de zooi opsplitten in paginas van max 40 records en dan moet het sneller gaan. ik ga nu tsten met een limit=40 of zo eens

moet ik alleen en script vinden met next previous oom in mijn script te plakken.... even op phphulp kijken ;-)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.