ASP peut être utilisé pour créer des pages Web interactives dynamiques et créer des applications Web puissantes, mais les collections ASP sont longues et consomment des ressources informatiques. Alors, comment devrions-nous accélérer? Jetons maintenant un œil aux compétences ASP SpeedUp.
L'un des conseils: améliorer l'efficacité de l'utilisation de collections de demandes
Accéder à une collection ASP pour extraire une valeur est un processus de consommation de ressources longs et informatiques. Étant donné que cette opération contient une série de recherches d'ensembles connexes, cela est beaucoup plus lent que d'accéder à une variable locale. Par conséquent, si vous avez l'intention d'utiliser une valeur à partir de la collection de demandes plusieurs fois dans la page, vous devriez envisager de le stocker comme une variable locale. Par exemple, écrivez le code dans le formulaire suivant pour accélérer le traitement du moteur du script:
strTitle=Request.Form("Title") strFirstName=Request.Form("FirstName") strLastName=Request.Form("LastName") If Len(strTitle) Then strTitle=strTitle & " " If strFirstName="" Then strFullName=strTitle & " " & strLastName Elseif Len(strFirstName)=1 Then strullName = strtitle & strfirstname & "." & strlastname else strullname = strtitle & strfirstname & "" & strlastname end ifConseils 2: Accès direct à la collection appropriée
Sinon, n'utilisez pas strpage = request ("page") pour obtenir les paramètres, car cela recherchera toutes les requêtes de collections, formulaire, cookies, clientCertificate, servervarible dans l'ordre jusqu'à ce que le nom de la première valeur de correspondance soit trouvé. Ceci est moins efficace que l'accès directement à l'ensemble approprié et est dangereux, sauf s'il est absolument garanti que cette valeur n'apparaîtra pas dans un autre ensemble.
Par exemple, il peut être souhaitable de rechercher le nom du serveur Web qui satisfait la demande du client, qui est accompli en recherchant "Server_name" dans la collection request.servervarables qui apparaît dans chaque requête. Cependant, si d'autres ensembles contiennent également des valeurs nommées "Server_name" (les noms de clés sont insensibles à un cas), lors de l'utilisation de la demande ("server_name"), un résultat incorrect sera obtenu. En bref, la collection appropriée doit être consultée directement que possible.
Conseils 3: Utilisez la réponse.
Utilisation de la réponse.SislientConnected est un moyen utile d'observer si l'utilisateur est toujours connecté au serveur et charge la page Web créée par l'ASP. Si l'utilisateur déconnecte ou cesse de télécharger, nous n'avons plus besoin de gaspiller les ressources du serveur pour créer des pages Web, car le contenu tampon sera rejeté par IIS. Ainsi, pour les pages Web qui nécessitent beaucoup de temps pour calculer ou utiliser plus de ressources, il vaut la peine de vérifier à chaque étape si le visiteur est hors ligne:
... code pour créer la première partie de la page si réponse.isclientConnedcction alors réponse.flush else Response.end end if ... code pour créer la partie suivante de la page
Conseils 4: Optimiser les opérations ADO dans ASP
D'une manière générale, les données constituent le contenu réel du site Web. Par conséquent, il est très utile d'optimiser les opérations ADO pour accélérer l'exécution du code ASP:
un. Sélectionnez uniquement les colonnes souhaitées: lors de l'ouverture du jeu d'enregistrements ADO, le nom de la table (c'est-à-dire sélectionner *) ne doit pas être automatiquement utilisé à moins que toutes les colonnes ne soient requises. L'utilisation d'une colonne distincte signifie que la quantité de données envoyées ou obtenue à partir du serveur sera réduite. Même si vous avez besoin d'utiliser toutes les colonnes, le nom de chaque colonne individuellement atteindra les meilleures performances, car le serveur n'a plus à interpréter les noms de ces colonnes.
né Utilisez autant que possible les procédures stockées. Les procédures stockées sont des programmes pré-compilés qui contiennent un plan d'exécution prêt, ils exécutent donc plus rapidement que les instructions SQL.
c. Utilisez le mode de curseur et de verrouillage approprié. Si tout le travail est effectué est de lire les données de l'ensemble d'enregistrements et de les afficher à l'écran, le jeu d'enregistrements en lecture unique en lecture uniquement par défaut est utilisé. Moins un travail ADO utilise pour maintenir les détails des enregistrements et du verrouillage, plus les performances de l'exécution sont élevées.
d. Utilisez des variables d'objet. Un moyen sûr d'améliorer les performances lorsque la traversée d'un ensemble d'enregistrements est d'utiliser des variables d'objet pour pointer vers les membres de l'ensemble. Par exemple:
Bien qu'il ne soit pas RSGCC.EOF Response.Write "Nom du projet:" & RSGC ("GCMC") & "(Code de projet:" & RSGC ("GCCODE") & ")" RSGC.Movenext WendVous pouvez utiliser réécrit comme suit pour accélérer l'exécution:
SET GCMC = RSGC ("GCMC") SET GCCODE = RSGC ("GCCODE") Bien que ce ne soit pas RSGC.EOF Response.Write "Nom du projet:" & GCMC & "(Code de projet:" & GCCODE & ")" RSGCC.Movenext WendLe nouveau code crée des références aux variables d'objet, de sorte que les variables d'objet peuvent être utilisées à la place des variables réelles, ce qui signifie que le moteur de script fonctionne moins car le nombre d'index dans l'ensemble devient moindre.
Conseils 5: Ne mélangez pas les moteurs de script
Nous savons que vous pouvez utiliser VBScript et JScript dans les pages ASP. Cependant, il n'est pas conseillé d'utiliser JScript et VBScript sur la même page. Parce que le serveur doit instancier et essayer de mettre en cache deux (pas un) moteurs de script, cela ajoute à la charge du système dans une certaine mesure. Par conséquent, du point de vue des performances, plusieurs moteurs de script ne doivent pas être mélangés dans la même page.
Ce qui précède sont les cinq conseils pour accélérer ASP. Nous pouvons apprendre ces cinq conseils pour accélérer l'ouverture du site Web. Si vous voulez en savoir plus, veuillez suivre le mauvais canal de nouvelles technologies.