Optimisation de code et délai d'exécution

Optimisation de code et délai d'exécution - ASP - Programmation

Marsh Posté le 04-12-2006 à 11:40:44    

Bonjour à toutes et à tous,
 
Je souhaite savoir s'il exite un moyen d'accélérer le traitement d'un code ASP.  
J'ai une base de donnée Access avec 540000 lignes qui me permettent de créer un tableau de 600 lignes x 900 colonnes.
Le problème, c'est que régulièrement j'ai des dépassements d'exécution de scripts.
Hors j'ai déjà ogmenter ce délai à 300 secondes... :pt1cable:
 
Quelqu'un aurait il dans ces tablettes un moyen de réduire concidérablement le temps d'excusion???
 
Merci de vos réponses.


---------------
..:Sylvain:.. Jetez un oeil = > . Space Pioneers . . TEM La Firme .
Reply

Marsh Posté le 04-12-2006 à 11:40:44   

Reply

Marsh Posté le 04-12-2006 à 11:43:42    

un tableau de 600 lignes par 900 colonnes :eek:
 
il n'est pas possibel de simplifer ce tableau et/ou de mettre els resultats en cache ?


---------------

Reply

Marsh Posté le 04-12-2006 à 12:00:11    

Salut flo850,
 
Ce tableau est en fait un carte de 600 km x 900 km (soit une cellule pour 1km²). Au départ, j'avais prévu de de faire à une échelle plus petite (environ 100m²).  
Sinon, ton idée de cache me parmet intéressante, pourrais-tu développer un peu plus???


---------------
..:Sylvain:.. Jetez un oeil = > . Space Pioneers . . TEM La Firme .
Reply

Marsh Posté le 04-12-2006 à 13:55:49    

tu ne calcule la carte qu'une fois , tu enregistre le fichier generé dans un fichier html et tu stocke une date de validité  
si la date actuelle < date validité tu retourne brutalement la page mise en cache , sinon tu fais tes appels a la bdd
 
sinon, j'ai eu a faire une carte d'interventions en cours :

  • j'ia mis la carte en background  
  • je place des icones en position absolue par dessus


ce qui fait que j'ai une resolution de 1px par 1px et que le code est assez leger
 
mon code ( PHP + SQL Server ) ressemble à ça :

Code :
  1. <html>
  2. <head>
  3. <META HTTP-EQUIV=Refresh CONTENT="5000; URL=<?php print $PHP_SELF ?>">
  4. <link rel="stylesheet" href="./design/css/6.css" title="6" type="text/css" media="screen,projection">
  5. <style>
  6. * {margin:0;padding:0}
  7. </style>
  8. <script>
  9. function allume(id){
  10.  document.getElementById(id).style.backgroundColor='#7496E2';
  11.  document.getElementById(id).style.color='white';
  12. }
  13. function eteint(id){
  14.  document.getElementById(id).style.backgroundColor='white';
  15.  document.getElementById(id).style.color='black';
  16. }
  17. </script>
  18. </head>
  19. <body>
  20. <img src="./design/images/SDIS71/carte.gif">
  21. <?
  22. if(mssql_num_rows($result)){
  23.  echo '<table class="liste" >';
  24.  echo '<tr class="titre"><th>Heure d\'appel</th><th>Nature</th><th>Ville</th></tr>';
  25.  $i = 0 ;
  26.  while(list($depart,$arrivee,$nature,$X,$Y,$ville) = mssql_fetch_row($result)){
  27.   $i++;
  28.   list($x,$y) = getPositionOnPicture($X,$Y);
  29.   echo '<img src="./design/images/SDIS71/etoile.gif" STYLE="position:absolute;left:'.$x.'px;top:'.$y.'px;" onMouseOver="allume(\''.$i.'\');" onMouseOut="eteint(\''.$i.'\');">';
  30.   $X -=791131;
  31.   $Y -= 2149056;
  32.   echo '<tr id="'.$i.'"><td>'.$depart.'</td><td>'.$nature.'</td><td>'.$ville.'</td></tr>';
  33.  }
  34.  echo"</table>";
  35.  echo '<h3 STYLE=" margin-top:10px;;width:100p%;text-align:center;"> il y a '.mssql_num_rows($result).' intervention en cours</h3>';
  36. }
  37. ?>
  38. </body>
  39. </html>


 
getPositionOnPicture est une fonction qui fait la mise à l'echelle entre les coordoonées de ma base et celle sur mon image ( translation + homotetie)
 


Message édité par flo850 le 04-12-2006 à 14:01:13

---------------

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed